Server Side Script/JAVA.Servlet.JSP
[JAVA] 문자 분류하기
미련곰
2010. 8. 7. 00:15
프로젝트중 한글과 영문 숫자를 입력받아 분류하는 로직을 구현중 먼가 명확한게 필요했다...
처음엔 정규표현식을 이용해야지 했는데 검색중 좋은글 발견..
거두절미하고 참조글을 참고로 돌려본결과...
public static void main(String[] args) throws Exception {
containsHangul("AAAAa한b글c테d스e트f123abcにほんご日本語!@#';");
}
public static void containsHangul(String str) {
for(int i = 0 ; i < str.length() ; i++) {
char ch = str.charAt(i);
Character.UnicodeBlock unicodeBlock = Character.UnicodeBlock.of(ch);
System.out.println("["+unicodeBlock + " | " + ch + "]");
}
}
결과
[BASIC_LATIN | A]
[BASIC_LATIN | A]
[BASIC_LATIN | A]
[BASIC_LATIN | A]
[BASIC_LATIN | a]
[HANGUL_SYLLABLES | 한]
[BASIC_LATIN | b]
[HANGUL_SYLLABLES | 글]
[BASIC_LATIN | c]
[HANGUL_SYLLABLES | 테]
[BASIC_LATIN | d]
[HANGUL_SYLLABLES | 스]
[BASIC_LATIN | e]
[HANGUL_SYLLABLES | 트]
[BASIC_LATIN | f]
[BASIC_LATIN | 1]
[BASIC_LATIN | 2]
[BASIC_LATIN | 3]
[BASIC_LATIN | a]
[BASIC_LATIN | b]
[BASIC_LATIN | c]
[HIRAGANA | に]
[HIRAGANA | ほ]
[HIRAGANA | ん]
[HIRAGANA | ご]
[CJK_UNIFIED_IDEOGRAPHS | 日]
[CJK_UNIFIED_IDEOGRAPHS | 本]
[CJK_UNIFIED_IDEOGRAPHS | 語]
[BASIC_LATIN | !]
[BASIC_LATIN | @]
[BASIC_LATIN | #]
[BASIC_LATIN | ']
[BASIC_LATIN | ;]
아스키 코드값과 점목시켜서 사용하면 먼가 더 명확한 추출이 되지않을까...
하는 나만의 생각??
참조글 : http://entireboy.egloos.com/4217304