Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用于测试密码强度的正则表达式_Javascript_Regex - Fatal编程技术网

Javascript 用于测试密码强度的正则表达式

Javascript 用于测试密码强度的正则表达式,javascript,regex,Javascript,Regex,我想要一个正则表达式,该正则表达式仅在字符串包含至少10到16个字符(至少包含一个数字、一个字符串、一个大写字母、一个小写字母和一个特殊字符)时匹配 我认为此字符串应该通过此regexp测试,但这不起作用: 字符串不包括撇号或引号。 字符串:'asdf@A1234'; Regexp:/^(?=.[0-9])(?=.[!@$%^&*])(?=.[a-z])(?=.[a-z])[a-zA-Z0-9!@$%^&*]{10,16}$/ 有人能告诉我我错过了什么吗 function testpwd(pwd

我想要一个正则表达式,该正则表达式仅在字符串包含至少10到16个字符(至少包含一个数字、一个字符串、一个大写字母、一个小写字母和一个特殊字符)时匹配

我认为此字符串应该通过此regexp测试,但这不起作用: 字符串不包括撇号或引号。 字符串:'asdf@A1234';

Regexp:
/^(?=.[0-9])(?=.[!@$%^&*])(?=.[a-z])(?=.[a-z])[a-zA-Z0-9!@$%^&*]{10,16}$/
有人能告诉我我错过了什么吗

function testpwd(pwd) {
                var re = /^(?=.*[0-9])(?=.*[!@#$%^&*])(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9!@#$%^&*]{10,16}$/;
             console.log(" Test Result is " + re.test(pwd) )
                return re.test(pwd);
            }
更新 为红旗队的队员们感到抱歉。代码正在运行。错误在其他地方:)。我正在重新表述这个问题,以便对未来的来访者有所帮助

它看起来确实有效


但是没有引号和分号。如果引号和分号是字符串的一部分,那么这就是匹配没有发生的原因。

(?=…)
表示如果此模式遵循匹配,则匹配此字符串。是的,该字符串通过该正则表达式,但在我的JSD中返回false。。请给我一点时间,我发布我的JS代码。请澄清字符串是否包含两个
'