我尝试了myStr.matches("^[\\p{Alphabetic}]+$"),但是这会导致PatternSyntaxException和消息Unknown character property name {Alphabetic} near index 15

我相信\p{Alpha}仅匹配ASCII字符,而我想将所有unicode字符与派生的Alphabetic属性进行匹配。

unichars似乎能够获得我可以从理论上进行核对的列表,但这似乎很简单。

如何使用Java使用正则表达式检查Alphabetic property是否适用?

最佳答案

根据the API for java.util.regex.Pattern中的定义,正确的名称为IsAlphabetic

例如。

"ä".matches("^[\\p{IsAlphabetic}]+$")

09-05 14:16