CJK 字符检测问题
CJK characters detection issue
我想检测任何亚洲字符,我的代码在大多数情况下都有效,但不适用于韩语,我无法检测字符串何时包含韩语字符。
这是我的代码:
Pattern pattern = Pattern.compile("\p{InHiragana}|\p{InKatakana}|\p{IsHan}|\p{IsHangul}}", Pattern.UNICODE_CASE);
System.out.println(pattern.matcher("성동구").find()); //return false
我试过 "InCJK_Compatibility, InCJK_Unified_Ideographs, InCJK_Compatibility_Forms" 和其他 CJK 组,没有一个有效
固定码:
Pattern pattern = Pattern.compile("\p{InHiragana}|\p{InKatakana}|\p{IsHan}|\p{IsHangul}", Pattern.UNICODE_CASE);
System.out.println(pattern.matcher("성동구").find()); //return true
试试这个方法,对我有用:
public class MatcherMatch {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("\p{IsHangul}");
Matcher matcher = pattern.matcher("김인재 한국어/조선말");
while(matcher.find()) {
System.out.println(matcher.group());
}
}
截图:
我想检测任何亚洲字符,我的代码在大多数情况下都有效,但不适用于韩语,我无法检测字符串何时包含韩语字符。
这是我的代码:
Pattern pattern = Pattern.compile("\p{InHiragana}|\p{InKatakana}|\p{IsHan}|\p{IsHangul}}", Pattern.UNICODE_CASE);
System.out.println(pattern.matcher("성동구").find()); //return false
我试过 "InCJK_Compatibility, InCJK_Unified_Ideographs, InCJK_Compatibility_Forms" 和其他 CJK 组,没有一个有效
固定码:
Pattern pattern = Pattern.compile("\p{InHiragana}|\p{InKatakana}|\p{IsHan}|\p{IsHangul}", Pattern.UNICODE_CASE);
System.out.println(pattern.matcher("성동구").find()); //return true
试试这个方法,对我有用:
public class MatcherMatch {
public static void main(String[] args) {
Pattern pattern = Pattern.compile("\p{IsHangul}");
Matcher matcher = pattern.matcher("김인재 한국어/조선말");
while(matcher.find()) {
System.out.println(matcher.group());
}
}
截图: