Skip to content

Hangul-toolkit

한글 자모 분리/조합 작업을 위한 툴킷 (Apache 2.0)

한글 자모 분해, 조합(오토마타), 조사 붙이기, 초/중/종 분해조합, 한글/한자/영문 여부 체크 등을 지원합니다.

base code forked from Hangulpy 1

Motivation

한국어 Character Embedding에 사용될 수 있는 자모 분리기 hgtk입니다.

영어는 하나의 알파벳(소문자, 대문자 -> 52자)을 기준으로 character embedding이 가능하지만

한국어는 하나의 단순 음절별(11172자)로 character embedding을 할 경우 계산량이 너무 많아집니다.

그래서 한국어 character embedding을 할 때 음절 대신 자모로 분리하여 사용하기도 합니다.

Install

pip install hgtk

Samples

Letter

Decompose character:

>>> hgtk.letter.decompose('감')
('ㄱ', 'ㅏ', 'ㅁ')

Compose character:

>>> hgtk.letter.compose('ㄱ', 'ㅏ', 'ㅁ')
'감'

Text

Decompose text:

>>> hgtk.text.decompose('학교종이 땡땡땡! hello world 1234567890 ㅋㅋ!')
'ㅎㅏㄱᴥㄱㅛᴥㅈㅗㅇᴥㅇㅣᴥ ㄸㅐㅇᴥㄸㅐㅇᴥㄸㅐㅇᴥ! hello world 1234567890 ㅋᴥㅋᴥ!'

기본 조합 완료 기호는 이고, 아래와 같이 compose_code 옵션으로 변경 가능합니다.

>>> hgtk.text.decompose('학교종이 땡땡땡! hello world 1234567890 ㅋㅋ!', compose_code='/')
'ㅎㅏㄱ/ㄱㅛ/ㅈㅗㅇ/ㅇㅣ/ㄸㅐㅇ/ㄸㅐㅇ/ㄸㅐㅇ/! hello world 1234567890 ㅋ/ㅋ/!'

Compose text (Automata):

>>> hgtk.text.compose('ㅎㅏㄱᴥㄱㅛᴥㅈㅗㅇᴥㅇㅣᴥ ㄸㅐㅇᴥㄸㅐㅇᴥㄸㅐㅇᴥ! hello world 1234567890 ㅋᴥㅋᴥ!')
'학교종이 땡땡땡! hello world 1234567890 ㅋㅋ!'

See also

Favorite site

References