代码:
Arrays.asList("AAAA DDDD, DDDD".split("[\\P{L}]+")).forEach(System.out::println);
输出:
AAAA
DDDD
DDDD
请注意它是P{L}
而不是p{L}
(表示字母)。我用Google搜索但却一无所获。那么有人可以给我一些暗示吗?
答案 0 :(得分:8)
您可以在Pattern
Javadoc中找到解释:
Unicode脚本,块,类别和二进制属性是使用
\p
和\P
结构编写的,如Perl中所示。如果输入具有属性prop,则\p{prop}
匹配,而如果输入具有该属性,则\P{prop}
不匹配。
所以它与\p
相反。
答案 1 :(得分:3)