正则表达式 - 将数字与常数进行比较

时间:2012-05-08 08:37:35

标签: regex

如果我想匹配所有小于2000的数字,我使用正则表达式

    [01]{1}[0-9]{3}

如果我想匹配1到5之间的所有数字,我使用表达式

    [2-4]{1}

但是,如果我想匹配5到123之间的所有数字???

是否有语法?

3 个答案:

答案 0 :(得分:2)

匹配数字> 5和< 123,试试:

[6-9]|[1-9][0-9]|1[0-1][0-9]|12[0-2]

有关详细信息,请查看:Matching Numeric Ranges with a Regular Expression

答案 1 :(得分:1)

将其分解为不同的部分:

[6-9] | [1-9] \ d | 1 [0-1] \ d | 12 [0-2]

答案 2 :(得分:1)

如果我需要这样做,我可能会用这个:

([^0-9]+)

然后将捕获组解析为整数(除非您已经使用动态语言),并且可以对其执行任何数字操作。