具体密码正则表达式
Specific password regular expression
我在创建正则表达式时遇到问题。需要填写以下内容:
1) 有 8-12 个字符
2) 至少1个大写字母
3) 至少3个小写字母
4) 至少 1 个号码
5) 至少1个特殊字符
6) 必须以小写、大写或数字开头
7) 最多2个重复字符
提前致谢!
到目前为止你得到了什么?
另外,您使用的是哪组正则表达式?
我将从表达式的长度开始
限制为 8-12,类似于 [a-zA-Z]{8,12}
对于第一个的要求你可以使用[]+
对于其他要求,它有点诡计
这应该有效
^(?=.*[A-Z])(?=(?:.*[a-z]){3})(?=.*[0-9])(?=.*[!"#$%&'()*+,\-./:;<=>?@[\]^_`{|}~])(?=(?:(.)(?!))+$)[a-zA-Z0-9].{7,11}$
解释/扩展
^ # BOS
(?= .* [A-Z] ) # 1 upper
(?=
(?: .* [a-z] ){3} # 3 lower
)
(?= .* [0-9] ) # 1 number
(?=
.* [!"#$%&'()*+,\-./:;<=>?@[\]^_`{|}~] # 1 special
)
(?= # Maximum 2 repeating
(?:
( . ) # (1)
(?! )
)+
$
)
[a-zA-Z0-9] # First alnum
.{7,11} # 8 to 12 max chars
$ # EOS
我在创建正则表达式时遇到问题。需要填写以下内容:
1) 有 8-12 个字符
2) 至少1个大写字母
3) 至少3个小写字母
4) 至少 1 个号码
5) 至少1个特殊字符
6) 必须以小写、大写或数字开头
7) 最多2个重复字符
提前致谢!
到目前为止你得到了什么? 另外,您使用的是哪组正则表达式?
我将从表达式的长度开始
限制为 8-12,类似于 [a-zA-Z]{8,12}
对于第一个的要求你可以使用[]+
对于其他要求,它有点诡计
这应该有效
^(?=.*[A-Z])(?=(?:.*[a-z]){3})(?=.*[0-9])(?=.*[!"#$%&'()*+,\-./:;<=>?@[\]^_`{|}~])(?=(?:(.)(?!))+$)[a-zA-Z0-9].{7,11}$
解释/扩展
^ # BOS
(?= .* [A-Z] ) # 1 upper
(?=
(?: .* [a-z] ){3} # 3 lower
)
(?= .* [0-9] ) # 1 number
(?=
.* [!"#$%&'()*+,\-./:;<=>?@[\]^_`{|}~] # 1 special
)
(?= # Maximum 2 repeating
(?:
( . ) # (1)
(?! )
)+
$
)
[a-zA-Z0-9] # First alnum
.{7,11} # 8 to 12 max chars
$ # EOS