1

我可以以某种方式比较正则表达式中的两个数字吗?我想要对 10-12 正确但对 12-10 不正确的正则表达式。我的意思是 10 必须小于 12。我想用 Javascript 来做。

4

3 回答 3

14

如果输入始终是 XY 的形式,那么为什么不使用 split() 函数以 '-' 作为分隔符,然后将两部分与 > 进行比较

您无法使用 RegExps 比较数值。

于 2008-11-18T13:49:09.430 回答
2

我不会为此使用正则表达式。我会在运算符上拆分字符串,然后根据我找到的运算符比较两个结果数字(我假设10+12并且12+10都是合法的)。

于 2008-11-18T13:48:13.427 回答
2

这里的问题是您试图将两个问题合二为一。

正则表达式擅长语法(即识别数字),但不擅长语义(即识别含义)。所以正则表达式肯定会帮助你识别x-y,但是你要求太多,然后继续推理和之间的x关系y

正如经常引用的那样;

有些人在遇到问题时会想“我知道,我会使用正则表达式”。现在他们有两个问题。( JWZ )

或者更确切地说,你现在有三个。

于 2008-11-18T14:10:46.343 回答