繁体   English   中英

验证逗号分隔的数字

[英]Validate comma separated numbers

我必须检查字符串是否具有以下模式: 1,2,10,11

规则是:

  • 它可以是类似11,21,2,n+1的序列。 用户想要的数字很多;
  • 该数字后面必须带有逗号,但不能以逗号结尾,例如: 1, ;;
  • 该数字可以是1或2位数字;
  • 除了数字和逗号,没有其他字符,没有空格或其他字符;
  • 无需检查数字顺序,这不是重点。

我试过的是:

  • (\\d{1,2})(,) :此代码检查一个1,句子,不返回true不返回字符串其余部分的内容,例如1,afasfs
  • 我已经试过了: (\\d{1,2})(?=(,))但它也接受上述情况;
  • 上面的两种情况我都不能应用^$因为它在诸如1,2,3正确情况下失败。

我不知道如何测试整个字符串。 我所有的测试仅检查其中一部分(例如1, ),而不检查整个字符串。

注意:我正在使用JavaScript test()函数。 不知道是否正确,但我相信是正确的。

您可以尝试以下正则表达式:

/^(\d{1,2},)*\d{1,2}$/

细节:

^           - Line start
\d{1,2}     - 1 or 2 digit number
\d{1,2},    - 1 or 2 digit number followed by a comma
(\d{1,2},)* - 0 or more of 1/2 digit number followed by a comma character
\d{1,2}     - 1 or 2 digit number
$           - Line end

正则表达式可视化

每个OP

该数字后必须带有逗号

因此,对aubhava的模式/^(\\d{1,2},)+\\d{1,2}$/进行一些修改,否则它将只验证110一位或两位数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM