更正密码类型字段的正则表达式
Correct regex for a password-type field
正在处理密码字段。
字段容器字母(小写、大写)、数字和一些特殊字符的正则表达式如下所示:
^([a-z,A-Z,0-9,#,$,%,&,_,]{8,20})*$
请告诉我,如果我希望每个密码至少有一个小写,一个大写和一个数字,应该如何修改?
例如,对于 3 个字符的长传,它是:
- 'aB3' - 通过
- 'ab3' - 失败
您需要使用前瞻,还需要删除字符 class.
中存在的所有逗号
^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?\d)[a-zA-Z0-9#$%&_]{8,20}$
请注意,密码长度必须至少为 8 个字符,最多为 20 个字符。
此答案已存档,因为它很糟糕。
使用 +
标记,它告诉引擎尝试查找前面的一个或多个标记。例如:
^(?=[a-z]+)(?=[A-Z])+(?=[0-9])+(?=[#$%&_\,\.]*)$
然后,在代码的其他地方使用长度检查来验证长度。
正在处理密码字段。
字段容器字母(小写、大写)、数字和一些特殊字符的正则表达式如下所示:
^([a-z,A-Z,0-9,#,$,%,&,_,]{8,20})*$
请告诉我,如果我希望每个密码至少有一个小写,一个大写和一个数字,应该如何修改?
例如,对于 3 个字符的长传,它是:
- 'aB3' - 通过
- 'ab3' - 失败
您需要使用前瞻,还需要删除字符 class.
中存在的所有逗号^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?\d)[a-zA-Z0-9#$%&_]{8,20}$
请注意,密码长度必须至少为 8 个字符,最多为 20 个字符。
此答案已存档,因为它很糟糕。
使用 +
标记,它告诉引擎尝试查找前面的一个或多个标记。例如:
^(?=[a-z]+)(?=[A-Z])+(?=[0-9])+(?=[#$%&_\,\.]*)$
然后,在代码的其他地方使用长度检查来验证长度。