java正则表达式匹配中文

Java 中匹配中文的正则表达式方法:使用 Character.UnicodeBlock 范围: [\p{IsCJKUnifiedIdeographs}]+使用 Unicode 范围代码: \u4e00-\u9fa5

Java 正则表达式匹配中文

在 Java 中,我们可以使用正则表达式来匹配中文。以下是具体方法:

使用 Character.UnicodeBlock 范围

String chineseRegex = "[\\p{IsCJKUnifiedIdeographs}]+";

该正则表达式使用 Unicode 字符块范围 \p{IsCJKUnifiedIdeographs} 匹配所有中文统一表意文字。

使用 Unicode 范围代码

String chineseRegex = "\\u4e00-\\u9fa5";

该正则表达式使用 Unicode 范围代码 \\u4e00-\\u

9fa5 匹配所有中文字符。

具体用法

String text = "你好,世界!";

Pattern chinesePattern = Pattern.compile(chineseRegex);
Matcher matcher = chinesePattern.matcher(text);

while (matcher.find()) {
    System.out.println(matcher.group());
}

这将打印出:

你好
世界

注意事项

  • 确保输入的文本已正确编码为 UTF-8 或其他 Unicode 兼容编码。
  • 中文标点符号(如逗号和句号)不是真正的中文字符,可以使用不同的正则表达式匹配它们。
  • 某些中文字符可能需要转义,例如反斜杠 \u5c3a