【发布时间】:2013-08-23 16:22:54
【问题描述】:
我有以下不允许某些特殊字符的正则表达式:
if (testString.match(/[`~,.<>;':"\/\[\]\|{}()-=_+]/)){
alert("password not valid");
}
else
{
alert("password valid");
}
这是有效的。如果密码不包含括号 (~,.<>;':"\/\[\]\|{}()-=_+) 内的任何特殊字符,此正则表达式将接受密码。
我的问题是它也不允许我输入奇怪的数字。
我在这里错过了什么?提前致谢!
这是一个示例:
【问题讨论】:
-
虽然您可以使用@m.buettner 的答案来修复您的正则表达式,但您仍然做错了:使用 whilelist 方法,指定 valid 字符!
-
@DarenThomas 完全同意
-
我也有 if 条件来仅检查有效字符,但我在服务器端使用它。我现在正在做的是创建一个客户端功能,该功能将检查是否存在一些不允许的字符,将密码指示器信号更改为弱。
-
同样在客户端,我有一个js函数来检查是否存在有效的特殊字符,将密码指示器信号更改为强。
标签: javascript regex