正则表达式匹配两个或多个逗号分隔的整数

Posted

技术标签:

【中文标题】正则表达式匹配两个或多个逗号分隔的整数【英文标题】:Regex to match two or more comma separated integers 【发布时间】:2016-12-04 12:13:20 【问题描述】:

我有一个逗号分隔值列表:

123            should fail   // using my regex this pass 
123, 230       should pass
234, 560, 890  should pass

使用这个正则表达式 ^(\d+(, \d+)*)?$ 如果它是单个值,它仍然通过。

如何只匹配列表中的 2 个或更多整数?

【问题讨论】:

【参考方案1】:

* 更改为+* 表示 0 个或多个匹配,+ 表示 1 个或多个。

【讨论】:

【参考方案2】:

您应该使用+ 而不是* 以确保(, \d+) 部分至少存在1 次。

^(\d+(, \d+)+)?

检查这个:https://regex101.com/r/yvWiZ0/1

【讨论】:

以上是关于正则表达式匹配两个或多个逗号分隔的整数的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式从逗号分隔列表中删除连续重复(整数和/或浮点数)

java 正则表达式匹配字符串,包含没有数字的单词,并且可以选择用逗号分隔

用于逗号分隔文本的 Mysql 正则表达式

正则表达式匹配逗号分隔的数字与可选的小数部分

正则表达式捕获逗号分隔值

正则表达式匹配逗号分隔的 key=value 列表,其中 value 可以包含逗号