JavaScript正则表达式只允许字母数字字符和一些特殊字符
在textarea字段中,我只允许字母数字字符、((连字符)、/(正斜杠)、((点)和空格。 我也经历过类似的问题,但无论如何,我的确切要求似乎有所不同。下面是我在阅读了各位成员的答案后得出的正则表达式:JavaScript正则表达式只允许字母数字字符和一些特殊字符,javascript,regex,Javascript,Regex,在textarea字段中,我只允许字母数字字符、((连字符)、/(正斜杠)、((点)和空格。 我也经历过类似的问题,但无论如何,我的确切要求似乎有所不同。下面是我在阅读了各位成员的答案后得出的正则表达式: /^[a-z0-9\-\/.]+$/i 我已经测试了正则表达式,到目前为止,它似乎工作,但我想再次检查。请验证上述正则表达式是否满足我的要求。您做得太多了 /^[a-z0-9/. -]+$/i 在字符类中,只有[、]、\、-和^具有特殊意义,^仅当它是第一个字符时,而-仅当它位于字符之间时
/^[a-z0-9\-\/.]+$/i
我已经测试了正则表达式,到目前为止,它似乎工作,但我想再次检查。请验证上述正则表达式是否满足我的要求。您做得太多了
/^[a-z0-9/. -]+$/i
在字符类中,只有[
、]
、\
、-
和^
具有特殊意义,^
仅当它是第一个字符时,而-
仅当它位于字符之间时
要匹配文字^
,只需将其置于除第一个以外的任何位置。要按字面意思匹配-
,请不要将其放在字符之间(即开头或结尾)
像
/
、
或$
这样的转义是不必要的。@Salman,谢谢你的保证。看起来很好(尽管你不需要转义一切)-就因为我有一点时间,我在regexpal.com上做了大量的测试数据供你查看:@jonathan:你错过了演示中的正斜杠/
。-是的-我真傻。这里有一个更新:谢谢@Tomalak,我已经删除了不必要的越狱。