【发布时间】:2014-01-16 14:46:57
【问题描述】:
我想要所有字母数字数据 + 只允许以下 4 个特殊字符。
' (single quote)
- (hyphen)
. (dot)
single space
我试过这个:
var userinput = $(this).val();
var pattern = [A-Za-z0-9_~\-!@#\$%\^&\*\(\)]+$
if(!pattern.test(userinput))
{
alert('not a valid');
}
但它不起作用。
【问题讨论】:
-
在什么情况下它不起作用?我希望得到的答案在“它不应该匹配输入 X”到“我的计算机在我运行它时试图杀死我”的范围内。
-
您的正则表达式对象 (
pattern) 的语法是错误的,模式本身也是如此 - 如果您只想要四个特殊字符,为什么还要在其中包含大量额外的字符? -
您的正则表达式明确允许
_,~,!,@,#,$,%,^@2, @98765333 ,(和)但根据我理解他们不应该匹配的问题......你只是从某个地方复制粘贴那个正则表达式吗?还是您的问题缺少一些细节?
标签: javascript jquery html regex validation