【发布时间】:2014-05-30 15:26:11
【问题描述】:
我需要一个正则表达式代码来匹配一组数字,但前提是第二个数字更大。数字以x,y的格式出现,如果y > x,我需要匹配它。
捕捉任意长度的数字都很容易:
/([0-9]*),([0-9]*)/
目前,它将捕获x,y 格式的任何内容(如果 x 和 y 是数字)。看看那里的其他例子,我尝试做这样的事情:
/([0-9]*),([0-9]*)(?>=\1)/
我很确定我的方向是正确的,那里的\1 引用了第一组,但我不确定如何进行比较。你能帮助我吗?
提前致谢!
附言 这是指向regexr demo 的链接以及一些示例。如您所见,目前一切都已匹配。
【问题讨论】:
-
用正则表达式做不到
-
您使用什么语言?您可以捕获两个数字,然后使用回调来过滤结果。您可能还想阅读我以前的answer。
-
正则表达式用于匹配模式,而不是评估数值。
-
@HamZa 我知道。但是对于我的用例来说,正则表达式会更容易,因为我需要以字符串形式传递验证信息(函数等需要预先配置验证,我需要一个更通用的解决方案)
-
您的正则表达式必须定义所有有效数字对的域。
标签: regex