▶ 뭉충닷컴
 
mungchung.com login
Site Search
My Space
주절주절...
공부방
쥔장소개
Board
자유게시판
유용한 정보
자료실
Programming
강좌 & Articles
Spring 3.0
프로그래밍 Tip
   -ASP
   -PHP
   -JavaScript
   -HTML
   -Java/JSP
   -Database
   -Crystal Report
   -Visual Basic
   -이클립스
   -리눅스
   -기타
Windows API (VB)
Spread Sheet 7.0
컴퓨터활용 Tip
Other things
StarCraft 전략
StarCraft 문서
김용(金庸)
Son Q & Dieda

한글 자소 분리

JAVA 조회 수 13284 추천 수 0 2010.02.16 18:43:25

자바 버젼임


출처 : http://levin01.tistory.com/573

http://blog.naver.com/rlaaudtnr8?Redirect=Log&logNo=50035063510


package util.jaso;

////////////////////////////////////////////////////////////////////////
// 한글 문자열을 초성/중성/종성으로 분리하여 출력 (UTF-8 버전)
// v1.0
////////////////////////////////////////////////////////////////////////

public class Jaso {

    // ㄱ      ㄲ      ㄴ      ㄷ      ㄸ      ㄹ      ㅁ      ㅂ      ㅃ      ㅅ      ㅆ      ㅇ      ㅈ      ㅉ      ㅊ      ㅋ      ㅌ      ㅍ      ㅎ
    final static char[] ChoSung   = { 0x3131, 0x3132, 0x3134, 0x3137, 0x3138, 0x3139, 0x3141, 0x3142, 0x3143, 0x3145, 0x3146, 0x3147, 0x3148, 0x3149, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e };
    // ㅏ      ㅐ      ㅑ      ㅒ      ㅓ      ㅔ      ㅕ      ㅖ      ㅗ      ㅘ      ㅙ      ㅚ      ㅛ      ㅜ      ㅝ      ㅞ      ㅟ      ㅠ      ㅡ      ㅢ      ㅣ
    final static char[] JwungSung = { 0x314f, 0x3150, 0x3151, 0x3152, 0x3153, 0x3154, 0x3155, 0x3156, 0x3157, 0x3158, 0x3159, 0x315a, 0x315b, 0x315c, 0x315d, 0x315e, 0x315f, 0x3160, 0x3161, 0x3162, 0x3163 };
    // ㄱ      ㄲ      ㄳ      ㄴ      ㄵ      ㄶ      ㄷ      ㄹ      ㄺ      ㄻ      ㄼ      ㄽ      ㄾ      ㄿ      ㅀ      ㅁ      ㅂ      ㅄ      ㅅ      ㅆ      ㅇ      ㅈ      ㅊ      ㅋ      ㅌ      ㅍ      ㅎ
    final static char[] JongSung  = { 0,      0x3131, 0x3132, 0x3133, 0x3134, 0x3135, 0x3136, 0x3137, 0x3139, 0x313a, 0x313b, 0x313c, 0x313d, 0x313e, 0x313f, 0x3140, 0x3141, 0x3142, 0x3144, 0x3145, 0x3146, 0x3147, 0x3148, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e };

    public static String hangulToJaso(String s) { // 유니코드 한글 문자열을 입력 받음

        int a, b, c; // 자소 버퍼: 초성/중성/종성 순
        String result = "";

        for (int i = 0; i < s.length(); i++) {
            char ch = s.charAt(i);

            if (ch >= 0xAC00 && ch <= 0xD7A3) { // "AC00:가" ~ "D7A3:힣" 에 속한 글자면 분해
                c = ch - 0xAC00;
                a = c / (21 * 28);
                c = c % (21 * 28);
                b = c / 28;
                c = c % 28;

                result = result + ChoSung[a] + JwungSung[b];

                if (c != 0) result = result + JongSung[c] ; // c가 0이 아니면, 즉 받침이 있으면
            } else {
                result = result + ch;
            }
        }
        return result;
    }
}


댓글 '1'

javacoder

2012.06.14 16:02:56
*.180.213.110

필요해서 직접구현을하려고 하니 한글의 속성을 몰라서 많이 헤맸었는데

이렇게 좋은 소스가 있었네요

정말 감사합니다 ^^

문서 첨부 제한 : 0Byte/ 2.00MB
파일 크기 제한 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
491 JAVA 개발자가 놓치기 쉬운 자바의 개념, 기본원리 뭉충닷컴 2012-03-01 15787
490 이클립스 maven 빌드시 Failed to execute goal org.apache.maven.plugins 이런 오류가 날 경우 file 뭉충닷컴 2012-02-24 6994
489 이클립스 이클립스 최적화 및 속도개선 뭉충닷컴 2012-02-07 9003
488 기타 SVN의 RA layer request failed 에러처리 뭉충닷컴 2012-02-03 9445
487 JAVA java.io.CharConversionException: EOF 뭉충닷컴 2012-01-30 12137
486 JAVA jar 분석 할때 사용하는 툴 file 뭉충닷컴 2012-01-30 7140
485 JAVA 하위디렉토리까지 찾아서 특정파일 찾아오기 뭉충닷컴 2012-01-18 5783
484 DataBase connect by를 이용한 몇가지 쿼리 뭉충닷컴 2011-11-29 5553
483 JAVA jvm 관련해서 쉽게 정리한 글 뭉충닷컴 2011-10-21 6292
482 리눅스 chkconfig 및 runlevel 뭉충닷컴 2011-10-19 5842
481 DataBase 오라클 with를 이용한 인라인뷰 뭉충닷컴 2011-05-26 9833
480 Script showModalDialog 와 showModelessDialog 의 아주 유용한 속성들 [1] 헤븡 2011-03-07 14728
479 ASP asp Explorer file [4] 헤븡 2011-03-03 11751
478 리눅스 find 명령어 여러가지 사용법 (리눅스 파일 찾기) 뭉충닷컴 2011-01-21 16866
477 리눅스 SSL 비밀번호가 다른 2개의 웹서비스를 하나의 아파치 서버에 셋팅 방법 뭉충닷컴 2011-01-12 11440
476 기타 command/console 지원 ftp 프로그램 file 뭉충닷컴 2011-01-12 9721
475 기타 ActiveX method 분석 방법 file 뭉충닷컴 2010-12-23 10356
474 기타 IEPrint 사용하기 (웹 인쇄시 여백 및 대화상자 설정) file [1] 뭉충닷컴 2010-12-23 13645
473 Script 문자를 아스키코드로 변환, 아스키코드를 문자로 변환 뭉충닷컴 2010-12-22 17055
472 리눅스 리눅스에서 서비스 설정하기. 뭉충닷컴 2010-12-14 9422
471 리눅스 tar 압축/해제의 여러가지 사용법 뭉충닷컴 2010-12-14 10635
470 기타 톰캣 로드밸런싱 설정하기 뭉충닷컴 2010-12-14 9638
469 DataBase 컬럼에 한글 포함여부 검사 뭉충닷컴 2010-09-29 13609
468 리눅스 아파치 로그파일 크기가 1기가 이상되면 백업하기 뭉충닷컴 2010-09-29 11356
467 Script script 인클루드시 src의 쿼리스트링(파라미터)값 읽어들이기 [1] 뭉충닷컴 2010-09-28 10219
466 Script chrome, opera등 브라우저에서 xml의 selectNodes, selectSingleNode 사용하기 뭉충닷컴 2010-08-25 14556
465 기타 svn.exe (svn command line) 뭉충닷컴 2010-08-20 10331
464 DataBase 오라클 숨겨진 함수들 뭉충닷컴 2010-07-29 13476
463 HTML 기본 css 셀렉터 뭉충닷컴 2010-07-20 9483
462 이클립스 이클립스에서 톰캣 메모리 설정 뭉충닷컴 2010-06-29 17407
461 DataBase 오라클 암시적 커서 사용 예제 뭉충닷컴 2010-06-11 11761
460 DataBase 오라클 Function 에서 DML 문 사용하기 뭉충닷컴 2010-06-10 14501
459 Script vbscript 실행 시간 지연 뭉충닷컴 2010-06-09 15519
458 DataBase EXECUTE IMMEDIATE 사용 예제 뭉충닷컴 2010-05-28 13001
457 Script 간단한 dom 노드 탐색 뭉충닷컴 2010-04-19 10556
456 DataBase dblink를 통한 insert시 속도향상 뭉충닷컴 2010-04-08 19531
455 Script Script 메모리 누수에 대한 TIP [1] 뭉충닷컴 2010-03-12 14427
454 DataBase 오라클 DB의 프로시저, 함수, 시노님 등등 목록 보기 뭉충닷컴 2010-03-11 14759
453 Script ie에서 경고창 없이 창 닫기 뭉충닷컴 2010-02-19 15546
452 Script 한글 자소 분석하여 문자열처리 [1] 뭉충닷컴 2010-02-16 11862
» JAVA 한글 자소 분리 [1] 뭉충닷컴 2010-02-16 13284
450 Script 한글 자소 분리 뭉충닷컴 2010-02-16 11058
449 기타 에디트 플러스(editplus)용 zen coding file [2] 뭉충닷컴 2010-02-05 17815
448 리눅스 500 OOPS: vsftpd: cannot locate user specified in 'ftp_username':ftp 뭉충닷컴 2010-02-01 12791
447 PHP php 문법 성능 측정 뭉충닷컴 2010-01-29 11694
446 Script 현재실행된 함수명을 호출 뭉충닷컴 2010-01-25 12279
445 JAVA 자바 소수점 자릿수 값 가져오기 뭉충닷컴 2010-01-14 19142
444 HTML 아이폰/아이팟용 웹사이트 만들 때 알아둬야 할 기본 뭉충닷컴 2010-01-06 11910
443 DataBase 오라클에서 특정문자개수 구하기 [1] 뭉충닷컴 2009-12-30 21266
442 Script 자바스크립트로 layer(span, div, iframe) 사이즈 조절 막대 file 뭉충닷컴 2009-12-21 16220
441 리눅스 (13) Permission denied Error 뭉충닷컴 2009-11-30 15634
440 HTML 프레임(frame)위에 레이어(layer) 띄우기 file 뭉충닷컴 2009-11-27 16003
439 HTML 레이어 팝업 띄워서 마우스로 이동 file 뭉충닷컴 2009-11-26 14916
438 리눅스 wrong ELF class: ELFCLASS32 오류 해결하기 [2] 뭉충닷컴 2009-11-24 14629
437 리눅스 로그인시 쉘스크립트 변경 [1] 뭉충닷컴 2009-11-23 10757
436 JAVA [JOTM+Xapool] xapool 이용 시 Null Pointer Exception 문제 해결 file 뭉충닷컴 2009-11-10 11858
435 JAVA getRequestURL jsp / servlet / java 현재 경로 알아내기 뭉충닷컴 2009-11-09 30600
434 리눅스 리눅스 터미널에 디렉토리, 파일별로 색상주기 뭉충닷컴 2009-11-09 14726
433 리눅스 리눅스에서 심볼릭 링크 만 찾기 뭉충닷컴 2009-11-07 12356
432 기타 톰캣의 org.apache.jk.common.ChannelSocket processConnection 오류 해결하기 뭉충닷컴 2009-11-04 15197