오늘은 동료들과 문제를 논의하다가 "입력 문자열에 한자가 포함되어 있는지"를 확인해야 하는데 처음에는 정규식을 사용하여 문자가 완전히 일치하는지 생각했습니다. 그러나 지금 우리가 직면한 문제는 이 문자열에 영어 문자, 숫자 및 특수 문자가 포함될 수도 있다는 것입니다. 나중에 이 시나리오와 일치할 수 있는 정규 표현식을 찾을 수 없었습니다. Matcher 클래스를 사용하여 이 문제를 해결할 수 있습니다. 대략적인 코드 구현은 다음과 같습니다.
import java.util.regex.Matcher;import java.util.regex.Pattern;public 클래스 데모 {static String regEx = "[/u4e00-/u9fa5]";static Pattern pat = Pattern.compile(regEx);public static void main(String[] args) {String input = "지옥 세상!";System.out.println(isContainsChina(input));input = "hello world";System.out.println(isContainsChina(input));}public static boolean isContainsChina(String str){Matcher matcher = pat.matcher(str);boolean flg = false;if(matcher.find()) {flg = true;}flg를 반환;}