从国外网站转过来的,Author : Bryian Tan
这个正则要求密码长度最少12位,包含至少1个特殊字符,2个数字,2个大写字母和一些小写字母。
(?=^.{12,25}$)(?=(?:.*?\d){2})(?=.*[a-z])(?=(?:.*?[A-Z]){2})(?=(?:.*?[!@#$%*()_+^&}{:;?.]){1})(?!.*\s)[0-9a-zA-Z!@#$%*()_+^&]*$
分解
(?=^.{12,25}$) -- 密码长度12-25,自己改变数字可以调节
(?=(?:.*?[!@#$%*()_+^&}{:;?.]){1}) -- 至少一个特殊字母,FYI
(?=(?:.*?\d){2}) -- 至少2个数字,FYI
(?=.*[a-z]) -- a-z的小写字母
(?=(?:.*?[A-Z]){2}) -- 至少2个大写字母,FYI