HangulParser – 한글 자소 조합과 분리

HangulParser는 Java와 Android 프로젝트에서 한글의 글자 하나를 자소(자음과 모음)로 분리하고, 자음과 모음을 하나의 글자로 조합 해주는 Java 라이브러리다. 간단한 안드로이드 앱을 개발하기 위해 찾아 보다가 한글 글자 하나는 유니코드 값을 가지고 초성, 중성, 종성으로 나눌 수 있는 문서를 읽고 만들게 되었다. 반대로 초성, 중성, 종성의 유니코드 값을 더하면 한 글자의 유니코드를 얻을 수 있다.

Reference App : 꽃별천지

Download

HangulParser Github

Java와 Android 프로젝트에서 빌드 툴로 Gradle을 사용하고 있다면 build.gradle 파일에 다음을 추가해서 빌드하면 쉽게 사용할 수 있다.

repositories {
  jcenter()
}

dependencies {
  compile 'com.github.kimkevin:hangulparser:1.0.0'
}

Usage

자소 분리 (Disassemble)

List disassemble(char hangul)

한 글자를 자소(초성, 중성, 종성)로 나누어 리스트로 반환한다.

Samples :

jasoList = HangulParser.getInstance().disassemble('한');
> [ㅎ, ㅏ, ㄴ]

예를 들어, ‘한’을 입력 값으로 넣어주면 결과는 [ㅎ,ㅏ,ㄴ]을 얻을 수 있다.

jasoList = HangulParser.getInstance().disassemble("한글");
> [ㅎ, ㅏ, ㄴ, ㄱ, ㅡ, ㄹ]

‘한글’을 입력할 경우에는 한 글자씩 분리해서 최종적으로는 ‘[ㅎ, ㅏ, ㄴ, ㄱ, ㅡ, ㄹ]’을 얻을 수 있다.

자소 결합 (assemble)

자소 리스트를 입력하면 조합해서 글자로 변환해준다.

public String assemble(List\<String\> jasoList)

Samples :

jasoList.add("ㅎ");
jasoList.add("ㅏ");
jasoList.add("ㄴ");
jasoList.add("ㄱ");
jasoList.add("ㅡ");
jasoList.add("ㄹ");

String hangul = HangulParser.getInstance().assemble(jasoList);
> 한글

‘[ㅎ, ㅏ, ㄴ, ㄱ, ㅡ, ㄹ]’을 입력값으로 넣어주면 결합해서 ‘한글’을 얻을 수 있다.