PersesTitan(페르) 기술블로그

[Java] HangulEditor 라이브러리 (뷁어, 영어발음, 한글 자모음 분리 등) 본문

VaneProject/maven

[Java] HangulEditor 라이브러리 (뷁어, 영어발음, 한글 자모음 분리 등)

PersesTitan(페르) 2024. 2. 4. 23:53

라이브러리 홈페이지

https://vaneproject.github.io/library/hangul-editor.html

 

Hangul Editor

Maven               

vaneproject.github.io

maven

<dependency>
    <groupId>io.github.vaneproject</groupId>
    <artifactId>hanguleditor</artifactId>
    <version>1.0.0</version>
</dependency>

gradle

implementation 'io.github.vaneproject:hanguleditor:1.0.0'

gradle (Kotlin)

implementation("io.github.vaneproject:hanguleditor:1.0.0")

클래스

class JapanRecovery

뷁어를 한글로 변환시켜주는 클래스 입니다.

static change(String)

Shift_JIS 인코딩 방식으로 작성된 일본어 가나 문자를 CP949 방식으로 잘못 인코딩하여 출력된 뷁어를 다시 일본어로 변환해주는 함수 입니다.

System.out.println(JapanRecovery.change("귦궫궢"));
System.out.println(JapanRecovery.change("궇궶궫"));
출력
わたし
あなた

class EnglishSound

영어 발음을 한국어로 변환해주는 함수 입니다.

static engToKor(String)

발음이 영어형태로 적혀있는 단어를 한글로 변환해서 출력해주는 함수입니다.

System.out.println(EnglishSound.engToKor("annyeong"));
출력
안녕

static ipaToKor(String)

발음기호 형태의 단어를 한글로 변환해서 출력해주는 함수 입니다.

System.out.println(EnglishSound.ipaToKor("Hello"));
출력
헬로

class HangulSplitItem

한글 한글자의 자음과 모음을 분리하여 관리하는 클래스입니다.

생성자

HangulSplitItem(char words)
HangulSplitItem()

상수

일부 타이핑으로 입력하기 힘든 겹받침이 상수로 정의되어 있습니다.

public final static char ㄹㄱ = 'ㄺ';
public final static char ㄹㅁ = 'ㄻ';
public final static char ㄱㅅ = 'ㄳ';
public final static char ㄴㅈ = 'ㄵ';
public final static char ㄴㅎ = 'ㄶ';
public final static char ㄹㅂ = 'ㄼ';
public final static char ㄹㅅ = 'ㄽ';
public final static char ㄹㅌ = 'ㄾ';
public final static char ㄹㅍ = 'ㄿ';
public final static char ㄹㅎ = 'ㅀ';
public final static char ㅂㅅ = 'ㅄ';

사용법

해당 클래스에서는 자음과 모음이 first, second, thread로 분리되어 관리됩니다.
빈 데이터는 ' '로 저장됩니다.
아래 예시처럼 set를 이용하여 특정 모음, 자음 위치를 변경할 수 있습니다.

HangulSplitItem item = new HangulSplitItem('안');
System.out.println(item.getFirst());
System.out.println(item.getSecond());
System.out.println(item.getThread());
System.out.println(item);
item.setThread(' ');
System.out.println(item);
출력
ㅇ
ㅏ
ㄴ
안
아

class HangulEditor

한글 관련 함수를 가지고 있는 클래스입니다.

static boolean isOnlyHangul(String words)

words가 모두 한글일때 true반환

static boolean isInOnlyHangul(String words)

words가 1개라도 한글이 포함되어 있을때 true반환

static boolean isHangul(char word)

word가 한글일때 true반환

boolean isConsonant(char word)

word가 자음일때 true반환

static boolean isVowels(char word)

word가 모음일때 true반환

static String randomHangul(int len)

한글로 이루어진 len길이의 아무 한글조합을 출력

System.out.println(HangulEditor.randomHangul(5));
출력
칆옑켜쿋시

static String randomHangul()

한글로 이루어진 16길이의 아무 한글조합을 출력

System.out.println(HangulEditor.randomHangul());
출력
툔홓꾞렔믾풅엶굽굊띎빐뼪릱혅퀠솧

static HangulSplitItem splitHangul(char word)

word글자를 HangulSplitItem 타입으로 반환

static List splitHangul(String words)

word를 리스트 형태의 HangulSplitItem 타입으로 반환