한글 오토마타 만들기 - 3
문자열 변환하기 문자열을 변환하는 작업은 한글로 변환하면서 해당 문자가 초성인지, 중성인지, 종성인지 판단하는 것도 중요하다. 이를 구분하기 위해 5가지로 분류할 수 있는데, 자음만 있는 경우 -> c 초성인 경우 -> l 모음인 경우 -> v 종성인 경우 -> t 로 지정해주고 나머지는 그대로 값을 넣어준다. def MakeHangeul(words: str) -> str: # ----- 중략 ----- # 입력 받은 값을 저장하고 단어 조합하기 위한 값을 저장하는 변수 result, result_state = "", [] idx, n = 0, len(words) # 입력 받은 것을 index에 따라 저장을 # 초성: l, 모음: v, 종성: t, 자음만: c 로 분류하며 저장 while idx < n:..
2023. 1. 18.
한글 오토마타 만들기 - 2
한글 변환 위한 준비 작업 이제 받아온 문자열에서 영어를 키보드의 한글과 mapping하여 "ㅎㅏㄴㄱㅡㄹ" 같이 만드는 작업을 진행할 것이다. 여기서, 변환 작업을 진행하기 위해서는 키보드 자판의 영어들이 한글의 어떠한 것과 매칭되어 있는지 잘 파악하고 작업을 진행해야 한다. 예시로 "a"는 "ㅁ"과 매칭되어 있으니 "a": 0x3141("ㅁ"의 아스키코드)로 하는 dictionary를 만들어 준다. keyval = { "A": 0, "B": 0, "C": 0, "D": 0, "E": 0x3138, "F": 0, "G": 0, "H": 0, "I": 0, "J": 0, "K": 0, "L": 0, "M": 0, "N": 0, "O": 0x3152, "P": 0x3156, "Q": 0x3143, "R": ..
2023. 1. 18.