Java:字符串模式:如何为所有具有特殊字符的字母字符指定正则表达式

标签 java regex string

我想确保一个字符串只包含字母字符(具有特殊字符,如 "é"、"è"、"ç"、"Ç"、"ï" 等。 ).

我这样做了,但是对于特殊字符返回 false...

if (myString.matches("^[a-zA-Z]+$")) {
    return true;
}

谢谢大家!

最佳答案

您可以使用 Unicode Category : \\p{L}\\P{Letter} 匹配来自任何语言的任何类型的字母。

if (myString.matches("\\p{L}+")) {
    return true;
}

顺便说一句,String.matches尝试匹配整个字符串,因此不需要 ^$ anchor 。

关于Java:字符串模式:如何为所有具有特殊字符的字母字符指定正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34369248/

相关文章:

java - 可以获得父边框或选项卡的名称吗?

java - 如何用更高效的方法替换groupBy

python - 将多个正则表达式合并为一个 RE

c# - 判断一个字符串中的所有字符是否相同

android - SQLite Where IN 后跟变量 String

java - 如何在 JSON 中传递数组值?

java - 是否有默认属性文件来放入配置?

c# - 匹配包含美元符号的整个单词?

R:删除字符串中的部分单词

java - 如何在 Java 中将 char 或 int 发送到需要 string 作为 s 参数的方法?