我不确定为什么这个正则表达式不能正常工作。
我想验证输入是否采用以下格式:

  • 12345678,12345678,12345678
  • * space * 12345678,12345678,12345678,12345678
  • 12345678,12345678,空格
  • 如果未返回false,则必须为8位数字。
    下面是我所做的正则表达式,但是它适用于2组数字,但是当我输入另一组数字时,验证不起作用。
  • 工作:12345678,12345678
  • 不起作用:12345678,12345678,12345678
  • var validate_numbers = /^\s*\d{8}\s*\+*(,\s*\d{8},*)?$/;
    

    谢谢

    最佳答案

    您需要更详细地描述您要匹配的内容。我将假设您要匹配以逗号和加号分隔的8位数字,并可能后面跟逗号。

    问题是您最多只能使用2位数字。 Visualization

    鉴于以上假设,这是您想要的正则表达式:

    ^(\s*\d{8}\s*[+,]?\s*)*$
    

    同样,您可以在debuggex上可视化它。

    关于javascript - 正则表达式以逗号和空格验证数字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15825714/

    10-13 02:36