【问题标题】:JavaScript RegEx to allow only AlphaNumeric Characters and some special charactersJavaScript RegEx 只允许字母数字字符和一些特殊字符
【发布时间】:2011-09-05 20:51:14
【问题描述】:

在 textarea 字段中,我只想允许使用字母数字字符、-(连字符)、/(正斜杠)、.(点)和空格。 我已经经历过类似的问题,但一种或另一种方式,我的确切要求似乎有所不同。所以,下面是我在阅读成员给出的答案后提出的正则表达式:

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

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

【问题讨论】:

  • @Salman,感谢您的保证。
  • 看起来不错(尽管您不需要逃避一切)- 只是因为我有一点时间,我在 regexpal.com 上做了很多测试数据供您查看:goo.gl/PF7Lk
  • @jonathan:你错过了演示中的正斜杠/
  • 啊,是的——我真傻。这是一个更新的:goo.gl/GFU8U

标签: javascript regex


【解决方案1】:

你逃避太多了

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

在一个字符类中,只有[]\-^有特殊含义,^即使只有当它是第一个字符和 - 仅当它在 个字符之间。

要匹配文字^,只需将其放在除第一个以外的任何位置即可。要从字面上匹配-,请不要将其放在字符之间(即,在开头或结尾)。

永远不需要转义 /.$ 之类的东西。

【讨论】:

  • 感谢@Tomalak,我已经删除了不必要的转义。
猜你喜欢
  • 1970-01-01
  • 2013-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多