正则表达式验证密码强度

从国外网站转过来的,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 
posted @ 2011-01-11 13:00  Ahriman  阅读(10612)  评论(3编辑  收藏  举报