要求:
密码长度8-16位
必须由大写字母,小写字母,数字,特殊符号组成
正则表达式为:
var v=$("#text").val();
reg=/^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)])+$).{6,}$/;
alert(reg.test(v));
正则表达式意思为
不能为纯数字,不能为纯小写字母,不能为纯大写字母,不能为纯特殊符号,至少8-16位。
细拆分为
(?![0-9]+$) 表示后面不能为纯数字
(?![a-z]+$) 表示后面不能为纯小写字母
(?![A-Z]+
)
表
示
后
面
不
能
为
纯
大
写
字
母
(
?
!
(
[
(
0
−
9
a
−
z
A
−
Z
)
]
)
+
) 表示后面不能为纯大写字母 (?!([^(0-9a-zA-Z)])+
)表示后面不能为纯大写字母(?!([(0−9a−zA−Z)])+) 表示后面不能为除数字和字母外的纯特殊符号
^ 这个符号单独用表示“开头”,用在中括号的开头,表示“非”;
.{6,} 表示至少6位的任意字符
$ 表示“结尾”
(?=.*[\W]) 这句的意思是后面必须有一个非字母数字及下划线的特殊符号
摘自爱jQuery:原文链接