본문 바로가기
JAVA/Java Study

[JAVA] 한글 -> 로마자 변환

by 늑인 2024. 1. 19.

 

https://github.com/crizin/korean-romanizer

 

GitHub - crizin/korean-romanizer: 한국어를 입력하면 로마자로 변환해주는 Java 라이브러리

한국어를 입력하면 로마자로 변환해주는 Java 라이브러리. Contribute to crizin/korean-romanizer development by creating an account on GitHub.

github.com

 

한글 표기를 로마자로 표기로 변경해야 되는 경우가 있다면 해당 라이브러리 참고 해볼만할것 같다.

 

 

홍길동 -> Hong gil dong 
홍길동 -> HKD
서문탁 -> Seo mun tak 
서문탁 -> SMT
황보혜정 -> Hwang bo hye jeong 
황보혜정 -> HBHJ
황보혜정 -> Hwang bo hye jeong 
황보혜정 -> HBHJ

해당 라이브러리 사용하면서 불편한점이 있어 일부 변경 적용하였다. 

 

1. 영문 글자들이 붙어 있는 경우 각 음절과 관련하여 재 분리 해야 되는경우 불편해 적용하였다. 

   ex ) Seomuntak  -> Seo mun tak  

 

 만약 띄어쓰기가 필요 없는경우 replace 함수를 통해 합치는건 쉽지만

 뛰어쓰기 및 - 문자등으로 분할되어 있지 않다면 다시 분리하기가 어렵기 때문이다. 

 

2. Type 이니셜 추가 하여 한글 이니셜 기능을 추가하였다. 

 

public class KoreanTest {
    public static void main(String[] args) {

        String word;
        word = "홍길동";
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.NameTypical));
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.Initial));

        word = "서문탁";
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.NameTypical));
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.Initial));

        word = "황보혜정";
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.NameTypical));
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.Initial));

        word = "황보혜정";
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.NameTypical));
        System.out.println(word+" -> "+KoreanRomanizer.romanize(word, KoreanCharacter.Type.Initial));

    }
}

사용법에 대한 샘플 예제 이다.

 

홍길동 -> Hong gil dong 
홍길동 -> HKD
서문탁 -> Seo mun tak 
서문탁 -> SMT
황보혜정 -> Hwang bo hye jeong 
황보혜정 -> HBHJ
황보혜정 -> Hwang bo hye jeong 
황보혜정 -> HBHJ

 

밑에는 압축 파일은 변경 적용한 소스 파일이다. 

Korean2Roman.zip
0.01MB

 

'JAVA > Java Study' 카테고리의 다른 글

[Java] Object2File 라이브러리 (Fst )  (0) 2024.05.31
[HashMap] 해쉬 맵  (0) 2024.02.19
[Java] Java 한글 라이브러리 hwpxlib  (0) 2023.12.18
[Java] Calandar 활용  (0) 2023.11.30
[Java] 공휴일 구하기  (0) 2023.11.30