用于限制输入字段的javascript中的正则表达式代码

时间:2014-07-11 14:46:05

标签: javascript regex input

我有一个关于限制在某些输入字段中输入的值的问题。我想输入这个:

9digits-whatever,例如101010101-Teststring。

我已经提出这个正则表达式作为解决方案,但它似乎不正确:

^\d{9}\-[a-zA-Z0-9_]*$

关于这个的任何想法?

谢谢。

2 个答案:

答案 0 :(得分:2)

以下正则表达式将匹配-后面的9位数字和任意数量的字符。

^\d{9}-.*$

如果您想要至少一个字符后跟-,请尝试以下正则表达式。

^\d{9}-.+$

<强>解释

  • ^断言我们在行的开头。
  • \d{9}正好是9位数。
  • \-文字-符号。
  • .*匹配任何字符零次或多次。
  • $行尾。

答案 1 :(得分:1)

  • 无需转义连字符-
  • 使用包含\w
  • [a-zA-Z0-9_]

如果9位数和连字符后只有[a-zA-Z0-9_],请尝试以下正则表达式。

^\d{9}-\w*$

Online demo