正则表达式为尾随和领先

时间:2015-07-12 21:19:00

标签: javascript regex

这看似简单,但我对正则表达式一无所知。我需要一个只允许数字,字母,连字符和下划线的正则表达式..其他任何东西都是不允许的,到目前为止我有:

/^[a-zA-Z\d]+$/

这匹配数字和字母,但不匹配夸张或下划线。

我不希望它匹配字符串

中的任何特殊字符

有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:4)

你说

  

只允许数字,字母,连字符和下划线的正则表达式

所以,使用

^[a-zA-Z0-9_-]+$

您可以对其进行测试here

<强>解释

  • ^ - 字符串开头
  • [a-zA-Z0-9_-]* - 匹配小写(a-z)和大写(A-Z)字母,数字(0-9),下划线(_)的字符类,和连字符(-)。请注意连字符在末尾,因此不必转义。 +表示 1次或更多次出现。如果您允许空字符串,请改用*
  • $ - 字符串结尾