Javascript校验密码复杂度的正则表达式
目前使用的正则表达式如下:
(?=.*\d)(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,30}
对应的验证规则是:密码中必须包含字母、数字、特称字符,至少8个字符,最多30个字符。
这个正则表达式在C#可以正常使用,但是在Javascript中却有问题。
请问是在js中如何写这样的正则表达式?
测试字符串:a123456-
解决方法如下所示:
把\d改为[0-9]问题就解决了,正则表达式如下:
var regex = new RegExp('(?=.*[0-9])(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,30}');
console.log(regex.test('a123456-'));
下面在看下正则表达式校验密码的方法
密码规则:6-20位字母数字组合:
var reg = /^[A-Za-z0-9]{6,20}$/;
以上所述是小编给大家介绍的Javascript校验密码复杂度的正则表达式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
正则匹配密码只能是数字和字母组合字符串功能【php与js实现】
这篇文章主要介绍了正则匹配密码只能是数字和字母组合字符串功能,涉及针对字符、数字等正则操作相关技巧,并给出了php与js实现示例,需要的朋友可以参考下2017-01-01校验普通电话、传真号码的正则表达式(可以+开头,除数字外,可含有-)
校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”2010-10-10
最新评论