密码长度6位以上且须包含大写、小写、数字、特殊符号中的任意3种
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <script type="text/javascript"> /** * * * *这样的正则貌似最好用多条吧,一条的话不但写起来困难,你反馈给页面提示也不容易,所以我给你写一段验证代码,你来参考一下如何? *如果你非要用一条正则,这正则实在是很难写,而且在JS里,还不支持正则预判,难度更高 *下面是实现的代码,你只要修改一下就可以直接拿去用了。 * * * **/ function testPass(str){ var rC = { lW:"[a-z]", uW:"[A-Z]", nW:"[0-9]", sW:"[\u0020-\u002F\u003A-\u0040\u005B-\u0060\u007B-\u007E]" }; function Reg(str, rStr){ var reg = new RegExp(rStr); if(reg.test(str)) return true; else return false; } if(str.length < 6){ //document.title = "您的密码长度太短"; alert("您的密码长度太短"); return false; }else{ var tR = { l:Reg(str, rC.lW), u:Reg(str, rC.uW), n:Reg(str, rC.nW), s:Reg(str, rC.sW) }; if((tR.l && tR.u && tR.n) || (tR.l && tR.u && tR.s) || (tR.s && tR.u && tR.n) || (tR.s && tR.l && tR.n)){ //document.title = "密码符合要求"; alert("密码符合要求"); return true; }else{ alert("您的密码必须含有“小写字母”、“大写字母”、“数字”、“特殊符号”中的任意三种"); //document.title = "您的密码必须含有“小写字母”、“大写字母”、“数字”、“特殊符号”中的任意三种"; return false; } } } </script> <input type="text" id="pass" value="abc12C" /> <input type="button" value="测试" onClick="testPass(document.getElementById("pass").value);" /> </body> </html>
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。