【发布时间】:2016-04-07 15:50:00
【问题描述】:
我想知道正则表达式的概念是否仅适用于 Java 中的字符串类型,或者也可以应用于数值。例如:
从整数列表中找出所有大于 x 但 小于 y
从大于 x 的整数列表中查找所有整数
从整数列表中找出小于 (x-10) 的所有整数
这个概念是否也适用于数值,但没有在 Java 中实现,或者对于数值来说实现起来是否太具有挑战性?
据我了解,正则表达式应该适用于任何涉及搜索的地方(无论值类型如何)。
正如答案和 cmets 中所建议的那样,Java 8 的 Stream 在功能上可以满足我的需求(通过过滤器等),但我的问题主要是在 list of regex patterns 中缺少数值的简写形式;例如,如果 > x 作为模式存在,那会更容易。
【问题讨论】:
-
对于所有这三种情况,您都应该使用比较运算符。要对数值使用正则表达式,您需要先将它们强制转换/强制为 String。换句话说,正则表达式只能用于字符串
-
听起来你想使用
Stream -
@ElliottFrisch:是的,我简要了解了
Stream,这似乎是我正在寻找的。span> -
大多数时候,反对者不会解释,但我再次问,为什么?我想,我的问题不够清楚,可能是在编辑部分之后。这不是要质疑你的判断,而是要纠正自己。