Javascript校验密码复杂度的正则表达式

Original 2016-12-28 10:11:52 478
abstract:这篇文章主要介绍了Javascript校验密码复杂度的正则表达式及正则表达式校验密码的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下目前使用的正则表达式如下:复制代码代码如下:(?=.*\d)(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,30}对应的验证规则是:密码中必须包含字母、数字、特称字符,至少8个字符,最多30个字符。这个正则表达式在C#可以正常使用,但是

这篇文章主要介绍了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}$/;

201608301026037.png

更多关于Javascript校验密码复杂度的正则表达式请关注PHP中文网(www.php.cn)其它文章!

Release Notes

Popular Entries