2

我必须使用格式“number1-number2”指定一对端口。Number1 和 number2 都在 [0-65535] 范围内。但是 number2 总是大于 number1。

是否可以使用正则表达式来表达逻辑“number2 总是大于 number1”。

4

1 回答 1

1

提取数字应该是您的首选,因为它是最佳选择。仅在正则表达式中没有好的方法可以做到这一点。你应该使用

\\[(\\d+)-(\\d+)\\]

提取这两个数字并进行比较。从字符串到整数的转换成本微乎其微,与任何可能接近您需要的正则表达式的成本相比,它相形见绌。我们正在谈论大量多项式指数与线性时间。

于 2012-12-02T01:18:07.133 回答