Java Regex.Pattern 支持以下字符类:
[a-z&&[def]]
与“d、e 或 f”匹配,称为交集。
从功能上讲,这与:
[def]
在大型 RE 中更容易阅读和理解。所以我的问题是,除了指定对字符类上类似 CSG 的操作的完全支持之外,交集还有什么用处?
(请注意,我了解减法的用途,例如[a-z&&[^bc]]
and [a-z&&[^m-p]]
,我具体询问的是上面提到的交叉点。)
尽管我从未需要这样做,但我可以想象使用预定义的字符类,这些字符类不是彼此的正确子集(从而使交集产生与原始两个字符类不同的东西)。例如。仅匹配小写拉丁字符:
[\p{Ll}&&\p{InBasicLatin}]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)