티스토리 뷰

목차
1 : 개발 이유와 구현 방법 떠올리기
2 : 구현 방법 모색하기 (현재) 

다음 생각한 방법

한글을 자소 분리 한 다음 해당 글자와 매칭되는 영어를 붙여줘야겠다!!

 

"한"이면 정규화를 통한 분리가 아닌 분리할 수 있는 규칙을 찾은 후 ㅎ ㅏ ㄴ 각각 글자에 해당하는 영어 타자인

g k s 를 붙여준다는 말이다...

 

이제 한글에서 영어로 변환하는 것은

1. 자소 분리하기

2. 각각의 글자에 해당하는 영어 매칭하기

3. 영어 반환하기

 

이 순서로 개발하면 될 것 같았다.

 

제일 난항은 영어를 어떻게 한국어로 변환할 지에 대한 것이였다.

영어를 한국어로 변환한다고 해도 이 글자가 받침이 있는 글자인지 아닌지, 초성만 있는지 중성만 있는지 종성까지 있는지를 구분해야하는 것이 어려웠다...

 

영타의 어느 부분에서 한 글자로의 병합을 끝내야하는지 고민해보았다.

1. 자음에서 자음인 경우
    1-1. 종성에 포함된 자음인지 확인한다.
   1-2. 종성 중에서도 합쳐진? 종성인지 확인한다. (ㄳ ㄺ ㅀ 등)
2. 자음에서 모음인 경우
    2-1. 해당 자음은 초성으로 인식한다.
3. 모음에서 자음인 경우
   3-1. 앞 글자가 자음이라면 중성으로 나두기
   3-2. 앞 글자가 종성까지 있거나 모음인 경우 그냥 한 글자로 나두기
4. 공백이거나 영어가 아닌 경우 건너뛴다.

방법 생각하면서 대충 정리한거라 말이 이상할 수는 있는데 이런 방법으로 합치기로 했다 ㅎㅎㅎ

 

한 글자를 초성 중성 종성의 구성인 객체로 만들면 어떨지 고민했음. 이건 개발하면서 방향을 정해봐야할 것 같다.

현재는 객체 배열을 만들까도 고민 중이다.

 

그리고 이 초성중성종성을 합치는 방법에 대한 고민은 다음과 같다.

 

https://en.wikipedia.org/wiki/Korean_language_and_computers#Hangul_in_Unicode

 

Korean language and computers - Wikipedia

From Wikipedia, the free encyclopedia Input and use of Korean on computers South Korean standard Dubeolsik ('two-set type') layout North Korean Dubeolsik layout The writing system of the Korean language is a syllabic alphabet of character parts (jamo) orga

en.wikipedia.org

한글 유니코드는 위와 같은 공식이 있단걸 찾게되었다.

[(초성) × 588 + (중성) × 28 + (종성)] + 44032 ("가"에 해당하는 코드 값)

https://en.wikipedia.org/wiki/Hangul_Jamo_(Unicode_block) 

 

Hangul Jamo (Unicode block) - Wikipedia

From Wikipedia, the free encyclopedia Unicode character block Hangul JamoRangeU+1100..U+11FF(256 code points)PlaneBMPScriptsHangulMajor alphabetsHangulAssigned256 code pointsUnused0 reserved code points1.1 (1993)240 (+240)5.2 (2009)256 (+16) Code chartNote

en.wikipedia.org

위의 주소에 들어가면 나오지만 초성 중성 종성은 다음과 같은 순서로 이루어져있다.

현대 표준어에 사용되는 글자만 추렸음. 초성 중성 종성간의 간격은 옛 한글에 사용되었던 코드들이 있기에 생긴 것이다.

 

초성 (U+1100 ~ U+1112)

0 1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16 17

 

중성 (U+1161 ~ U+1176)

0 1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16 17
18 19 20            
           

 

종성 (U+11A8 ~ U+11C2)

0 1 2 3 4 5 6 7 8
-
9 10 11 12 13 14 15 16 17
18 19 20 21 22 23 24 25 26
27                
               

 

각 자리에 해당하는 코드를 js의 String.fromCharCode(코드 값) 함수를 이용하면 코드 값에 해당하는 글자가 나오기 때문에 글자만 만들면 한글로의 변환은 쉬울 것 같았다!!

 

이제 실제로 구현해보고자 한다.

반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함