2

我对正则表达式有一个很小但很烦人的问题。我想为包含九位电话号码的逗号分隔列表查找正则表达式,例如:

通行证:123456789,123456789

不通过:123456789,123456789,

到目前为止,我有这样的东西:/^\d{9}+(,\d{9}\+)\*$/当然,它可以在这个工具http://regex.larsolavtorvik.com中工作,但在 javascript 中它不起作用,我认为这是众所周知的错误(对于 Javascript 人):

Invalid regular expression: /^\d{9}+(,\d{9}\+)\*$/: Nothing to repeat 

所以,我添加了反斜杠,它看起来像这样:/^\d{9}\+(,\d{9}\+)\*$/。当然这个也行不通。

4

1 回答 1

3

你正在逃跑*,这就是+问题\所在。

*表示匹配前面的字符 0 到多次

+表示匹配前面的字符 1 到多次

{9}表示匹配前面的字符 9 次..所以不需要+在它之后使用

正则表达式应该是

/^\d{9}(,\d{9})*$/
于 2013-01-23T18:01:15.903 回答