我有一个简单的问题,我打算使用以下正则表达式来测试密码字段:
/^\S{8,24}$/
限制是:
允许使用除空白之外的任何字符,长度在8到24之间。
有人预计使用此正则表达式作为密码可能会出现任何问题吗?
答案 0 :(得分:3)
如果您询问所提供的限制是否良好:
不是,问题:
Google "regex password validation"得到一些想法,有一点。 First link
如果您询问正则表达式是否强制执行所提供的限制:
是的,没关系。
答案 1 :(得分:1)
几种:
使用正则表达式验证密码强度是可能的。一个例子:
^ # Start of string
(?=.*[a-z]) # Assert presence of at least one lowercase ASCII character
(?=.*[A-Z]) # Assert presence of at least one uppercase ASCII character
(?=.*[0-9]) # Assert presence of at least one ASCII digit
(?=.*\W) # Assert presence of at least one non-alphanumeric character
(?!.*(.)\1\1) # Assert no triply repeated characters (aaa)
.{8,} # Match at least 8 characters
$ # End of string