2011-09-05 136 views
4

在textarea字段中,我想只允许字母数字字符, - (连字符),/(正斜杠),。(点)和空格。 我已经经历过类似的问题,但以某种方式,我的确切要求似乎有所不同。所以,下面是正则表达式我已经想出了后阅读答案给各成员:JavaScript RegEx仅允许AlphaNumeric字符和一些特殊字符

/^[a-z0-9\-\/. ]+$/i

我测试过的正则表达式,到目前为止,似乎工作,但我想仔细检查。请验证上述正则表达式是否满足我的要求。

+4

看起来对我好! –

+0

@Salman,感谢您的保证。 –

+1

看起来很好(尽管你不需要逃避一切) - 仅仅因为我有一些时间我在regexpal.com上做了大量的测试数据供你查看:http://goo.gl/PF7Lk –

回答

6

你做太多逃脱

/^[a-z0-9/. -]+$/i 

字符类中,只有[]\-^具有特殊的意义,在^甚至只有当它是第一字符和-只有在之间个字符之间。

要匹配一个文字^只是把它放在第一个位置。字面上匹配-,不要放在字符之间(即在开始或结束时)。

转义像/,.$这样的东西是不必要的。

+0

谢谢@Tomalak,我已经删除了不必要的逃脱。 –

相关问题