我正试图通过客户端(JavaScript)和服务器端(ASP. js)的正则表达式实现密码复杂性的强制执行。净c#) .
规则如下:
- 必须是8-40个字符
- 必须包含至少一个数字
- 必须包含至少一个小写字母
- 必须包含至少一个大写字母
- 必须包含至少一个特殊字符
你能帮助构造验证上面的正则表达式吗?
试试这个正则表达式:
((?=.*d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%]).{8,40})
( # Start of group
(?=.*d) # must contains one digit from 0-9
(?=.*[a-z]) # must contains one lowercase characters
(?=.*[A-Z]) # must contains one uppercase characters
(?=.*[@#$%]) # must contains one special symbols in the list "@#$%"
. # match anything with previous condition checking
{8,40} # length at least 8 characters and maximum of 40
)