Hari ini, saya sedang mendiskusikan masalah dengan rekan-rekan saya. Kita perlu memeriksa "apakah string input berisi karakter Cina". adalah bahasa Mandarin, tetapi Masalah yang kami hadapi sekarang adalah string ini mungkin juga berisi karakter bahasa Inggris, angka, dan karakter khusus. Saya tidak dapat memikirkan ekspresi reguler yang cocok dengan skenario ini Kelas matcher dapat digunakan untuk mengatasi masalah ini. Implementasi kode kasarnya adalah sebagai berikut:
import java.util.regex.Matcher;import java.util.regex.Pattern; demo kelas publik {static String regEx = "[/u4e00-/u9fa5]";static Pattern pat = Pattern.compile(regEx);public static void main(String[] args) {String input = "Astaga!";System.out.println(isContainsChinese(input));input = "halo dunia";System.out.println(isContainsChinese(input));}public static boolean isContainsChinese(String str){Matcher matcher = pat.matcher(str);boolean flg = false;if (matcher.find()) {flg = true;}kembalikan flg;}