密码验证正则表达式
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<title>密码验证正则表达式</title>
</head>
<body>
if (preg_match('/^[w~!@#$%^&*()_+{}:"<>?-=[];',./]{8,16}$/', $subject)) {
# successful match
} else {
# match attempt failed
}
用来验证是否是8-16位
if (preg_match('/([w~!@#$%^&*()_+{}:"<>?-=[];',./]){3,}/', $subject)) {
# successful match
} else {
# match attempt failed
}
}
用来校验是否存在3个相同的连续字符
实例二
1.变态 ……
/^[`~!@#$%^&*()+\[]{}:<>?_-]{0,5}(w+[`~!@#$%^&*()+\[]{}:<>?_-]{0,5})+w*$/
2.得三个正则都匹配:
/[a-z]/
/[a-z]/
/d/
说明
^(.*d+.*w+.*)|(.*w+.*d+.*)$
能完成2和3
(2)至少有一个特殊字符(或者必须包含一个特殊字符)
(3)至少包含一个数字
(1)大于7个字符 你还是用长度来判断吧
(?=.{7,})//7个任意字符
?=(.*d){1,})//其结尾为数字的任意个字符
(?=(.*w){1,})//其结尾为特殊字符的任意个字符
function checkinputs(value)
{
var re = /^(?=.{6,32}$)[!#$%&()*+,-./:; <=> ?@w[]`{|}~]+$ /.test(value);
var re1 = ((r=/[a-z]/ig).test(value) && value.match(r).length> =3);
var re2 = /d/.test(value);
var re3 = /[w_]/.test(value);
return (re && re1 && re2 && re3);
}
alert(checkinputs( "abcd123$ "));
</body>
</html>