为什么正则表达式\pL+\pM+
不适用于英语?
为什么下面的第一个示例结果为假,而第二个示例结果为真?
System.out.println(Charset.forName("UTF-8").encode("suren")
.asCharBuffer().toString().matches("\\PL+\\PM+"));
System.out.println(Charset.forName("UTF-8").encode("स्वागत")
.asCharBuffer().toString().matches("\\PL+\\PM+"));
基本上我需要一个正则表达式来限制字符串中的唯一 unicode 字符(世界上的任何语言)。