Class KoreanChar

Object
io.github.bangjunyoung.KoreanChar

public final class KoreanChar extends Object
한글 처리에 필요한 다양한 종류의 도우미 함수들을 담고 있는 클래스. Unicode Hangul Jamo와 Unicode Hangul Compatibility Jamo를 모두 지원한다. 이 클래스는 인스턴스 생성이 불가능하다.
  • Method Summary

    Modifier and Type
    Method
    Description
    static char
    compose(char choseong, char jungseong)
    주어진 초성, 중성을 조합하여 종성이 없는 한글 음절을 만든다.
    static char
    compose(char choseong, char jungseong, char jongseong)
    주어진 초성, 중성, 종성을 조합하여 한글 음절을 만든다.
    static char
    compose(String choseong, String jungseong)
    주어진 초성, 중성을 조합하여 종성이 없는 한글 음절을 만든다.
    static char
    compose(String choseong, String jungseong, String jongseong)
    주어진 초성, 중성, 종성을 조합하여 한글 음절을 만든다.
    static char
    Unicode Hangul Jamo 초성 문자를 Unicode Hangul Compatibility Jamo 초성 문자로 변환한다.
    static char
    Unicode Hangul Compatibility Jamo 초성 문자를 Unicode Hangul Jamo 초성 문자로 변환한다.
    static char
    Unicode Hangul Compatibility Jamo 종성 문자를 Unicode Hangul Jamo 종성 문자로 변환한다.
    static char
    Unicode Hangul Compatibility Jamo 중성 문자를 Unicode Hangul Jamo 중성 문자로 변환한다.
    static char
    Unicode Hangul Jamo 종성 문자를 Unicode Hangul Compatibility Jamo 종성 문자로 변환한다.
    static char
    Unicode Hangul Jamo 중성 문자를 Unicode Hangul Compatibility Jamo 중성 문자로 변환한다.
    static String[]
    decompose(char syllable)
    주어진 한글 음절을 Unicode Hangul Jamo 초성, 중성, 종성으로 분해한다.
    static String[]
    decomposeToCompat(char syllable)
    주어진 한글 음절을 Unicode Hangul Compatibility Jamo 초성, 중성, 종성으로 분해한다.
    static char
    getChoseong(char syllable)
    주어진 한글 음절로부터 Unicode Hangul Jamo 초성을 추출한다.
    static char
    getCompatChoseong(char syllable)
    주어진 한글 음절로부터 Unicode Hangul Compatibility Jamo 초성을 추출한다.
    static char
    getCompatJongseong(char syllable)
    주어진 한글 음절로부터 Unicode Hangul Compatibility Jamo 종성을 추출한다.
    static char
    getCompatJungseong(char syllable)
    주어진 한글 음절로부터 Unicode Hangul Compatibility Jamo 중성을 추출한다.
    static char
    getJongseong(char syllable)
    주어진 한글 음절로부터 Unicode Hangul Jamo 종성을 추출한다.
    static char
    getJungseong(char syllable)
    주어진 한글 음절로부터 Unicode Hangul Jamo 중성을 추출한다.
    static boolean
    isChoseong(char c)
    주어진 문자가 Unicode Hangul Jamo 초성인지 검사한다.
    static boolean
    주어진 문자가 Unicode Hangul Compatibility Jamo 초성인지 검사한다.
    static boolean
    주어진 문자가 Unicode Hangul Compatibility Jamo 종성인지 검사한다.
    static boolean
    주어진 문자가 Unicode Hangul Compatibility Jamo 중성인지 검사한다.
    static boolean
    isJongseong(char c)
    주어진 문자가 Unicode Hangul Jamo 종성인지 검사한다.
    static boolean
    isJungseong(char c)
    주어진 문자가 Unicode Hangul Jamo 중성인지 검사한다.
    static boolean
    isSyllable(char c)
    주어진 문자가 한글 음절인지 검사한다.
    static char
    주어진 자모를 복자모로 결합한다.
    static String
    splitJamo(char jamo)
    주어진 자모를 단자모로 분해한다.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • isSyllable

      public static boolean isSyllable(char c)
      주어진 문자가 한글 음절인지 검사한다.
      Parameters:
      c - 검사할 문자
      Returns:
      c가 한글 음절이면 true, 아니면 false.
    • isChoseong

      public static boolean isChoseong(char c)
      주어진 문자가 Unicode Hangul Jamo 초성인지 검사한다.
      Parameters:
      c - 검사할 문자
      Returns:
      c가 Unicode Hangul Jamo 초성이면 true, 아니면 false.
    • isJungseong

      public static boolean isJungseong(char c)
      주어진 문자가 Unicode Hangul Jamo 중성인지 검사한다.
      Parameters:
      c - 검사할 문자
      Returns:
      c가 Unicode Hangul Jamo 중성이면 true, 아니면 false.
    • isJongseong

      public static boolean isJongseong(char c)
      주어진 문자가 Unicode Hangul Jamo 종성인지 검사한다.
      Parameters:
      c - 검사할 문자
      Returns:
      c가 Unicode Hangul Jamo 종성이면 true, 아니면 false.
    • isCompatChoseong

      public static boolean isCompatChoseong(char c)
      주어진 문자가 Unicode Hangul Compatibility Jamo 초성인지 검사한다.
      Parameters:
      c - 검사할 문자
      Returns:
      c가 Unicode Hangul Compatibility Jamo 초성이면 true, 아니면 false.
    • isCompatJungseong

      public static boolean isCompatJungseong(char c)
      주어진 문자가 Unicode Hangul Compatibility Jamo 중성인지 검사한다.
      Parameters:
      c - 검사할 문자
      Returns:
      c가 Unicode Hangul Compatibility Jamo 중성이면 true, 아니면 false.
    • isCompatJongseong

      public static boolean isCompatJongseong(char c)
      주어진 문자가 Unicode Hangul Compatibility Jamo 종성인지 검사한다.
      Parameters:
      c - 검사할 문자
      Returns:
      c가 Unicode Hangul Compatibility Jamo 종성이면 true, 아니면 false.
    • getChoseong

      public static char getChoseong(char syllable)
      주어진 한글 음절로부터 Unicode Hangul Jamo 초성을 추출한다.
      Parameters:
      syllable - 초성을 추출할 한글 음절
      Returns:
      Unicode Hangul Jamo 초성.
      Throws:
      IllegalArgumentException - syllable이 한글 음절이 아닐 때.
    • getJungseong

      public static char getJungseong(char syllable)
      주어진 한글 음절로부터 Unicode Hangul Jamo 중성을 추출한다.
      Parameters:
      syllable - 중성을 추출할 한글 음절
      Returns:
      Unicode Hangul Jamo 중성.
      Throws:
      IllegalArgumentException - syllable이 한글 음절이 아닐 때.
    • getJongseong

      public static char getJongseong(char syllable)
      주어진 한글 음절로부터 Unicode Hangul Jamo 종성을 추출한다.
      Parameters:
      syllable - 종성을 추출할 한글 음절
      Returns:
      Unicode Hangul Jamo 종성. 종성이 없으면 ''를 반환한다.
      Throws:
      IllegalArgumentException - syllable이 한글 음절이 아닐 때.
    • getCompatChoseong

      public static char getCompatChoseong(char syllable)
      주어진 한글 음절로부터 Unicode Hangul Compatibility Jamo 초성을 추출한다.
      Parameters:
      syllable - 초성을 추출할 한글 음절
      Returns:
      Unicode Hangul Compatibility Jamo 초성.
      Throws:
      IllegalArgumentException - syllable이 한글 음절이 아닐 때.
    • getCompatJungseong

      public static char getCompatJungseong(char syllable)
      주어진 한글 음절로부터 Unicode Hangul Compatibility Jamo 중성을 추출한다.
      Parameters:
      syllable - 중성을 추출할 한글 음절
      Returns:
      Unicode Hangul Compatibility Jamo 중성.
      Throws:
      IllegalArgumentException - syllable이 한글 음절이 아닐 때.
    • getCompatJongseong

      public static char getCompatJongseong(char syllable)
      주어진 한글 음절로부터 Unicode Hangul Compatibility Jamo 종성을 추출한다.
      Parameters:
      syllable - 종성을 추출할 한글 음절
      Returns:
      Unicode Hangul Compatibility Jamo 종성. 종성이 없으면 ''를 반환한다.
      Throws:
      IllegalArgumentException - syllable이 한글 음절이 아닐 때.
    • convertCompatToChoseong

      public static char convertCompatToChoseong(char c)
      Unicode Hangul Compatibility Jamo 초성 문자를 Unicode Hangul Jamo 초성 문자로 변환한다.
      Parameters:
      c - 변환할 Unicode Hangul Compatibility Jamo 초성 문자.
      Returns:
      변환된 Unicode Hangul Jamo 초성 문자.
      Throws:
      IllegalArgumentException - 주어진 c가 Unicode Hangul Compatibility Jamo 초성 문자가 아닐 때.
    • convertCompatToJungseong

      public static char convertCompatToJungseong(char c)
      Unicode Hangul Compatibility Jamo 중성 문자를 Unicode Hangul Jamo 중성 문자로 변환한다.
      Parameters:
      c - 변환할 Unicode Hangul Compatibility Jamo 중성 문자.
      Returns:
      변환된 Unicode Hangul Jamo 중성 문자.
      Throws:
      IllegalArgumentException - 주어진 c가 Unicode Hangul Compatibility Jamo 중성 문자가 아닐 때.
    • convertCompatToJongseong

      public static char convertCompatToJongseong(char c)
      Unicode Hangul Compatibility Jamo 종성 문자를 Unicode Hangul Jamo 종성 문자로 변환한다.
      Parameters:
      c - 변환할 Unicode Hangul Compatibility Jamo 종성 문자.
      Returns:
      변환된 Unicode Hangul Jamo 종성 문자. 종성이 없는 경우 ''를 반환한다.
      Throws:
      IllegalArgumentException - 주어진 c가 Unicode Hangul Compatibility Jamo 종성 문자가 아닐 때.
    • convertChoseongToCompat

      public static char convertChoseongToCompat(char c)
      Unicode Hangul Jamo 초성 문자를 Unicode Hangul Compatibility Jamo 초성 문자로 변환한다.
      Parameters:
      c - 변환할 Unicode Hangul Jamo 초성 문자.
      Returns:
      변환된 Unicode Hangul Compatibility Jamo 초성 문자.
      Throws:
      IllegalArgumentException - 주어진 c가 Unicode Hangul Jamo 초성 문자가 아닐 때.
    • convertJungseongToCompat

      public static char convertJungseongToCompat(char c)
      Unicode Hangul Jamo 중성 문자를 Unicode Hangul Compatibility Jamo 중성 문자로 변환한다.
      Parameters:
      c - 변환할 Unicode Hangul Jamo 중성 문자.
      Returns:
      변환된 Unicode Hangul Compatibility Jamo 중성 문자.
      Throws:
      IllegalArgumentException - 주어진 c가 Unicode Hangul Jamo 중성 문자가 아닐 때.
    • convertJongseongToCompat

      public static char convertJongseongToCompat(char c)
      Unicode Hangul Jamo 종성 문자를 Unicode Hangul Compatibility Jamo 종성 문자로 변환한다.
      Parameters:
      c - 변환할 Unicode Hangul Jamo 종성 문자.
      Returns:
      변환된 Unicode Hangul Compatibility Jamo 종성 문자. 종성이 없는 경우 ''를 반환한다.
      Throws:
      IllegalArgumentException - 주어진 c가 Unicode Hangul Jamo 종성 문자가 아닐 때.
    • joinJamo

      public static char joinJamo(String jamo)
      주어진 자모를 복자모로 결합한다. 복자모가 주어지거나 단자모가 한 개만 주어지면 주어진 자모를 그대로 반환한다.
      Parameters:
      jamo - 결합할 두 개의 단자모.
      Returns:
      결합된 한 개의 복자모.
      Throws:
      IllegalArgumentException - 주어진 jamo가 한글 자모가 아니거나 두 개를 넘는 자모가 주어질 때.
    • splitJamo

      public static String splitJamo(char jamo)
      주어진 자모를 단자모로 분해한다. 복자모가 주어지면 두 개의 단자모로 분해하여 반환하며, 단자모가 주어지면 주어진 단자모를 그대로 반환한다.
      Parameters:
      jamo - 분해할 복자모.
      Returns:
      분해된 단자모.
      Throws:
      IllegalArgumentException - 주어진 jamo가 한글 자모가 아닐 때.
    • compose

      public static char compose(char choseong, char jungseong)
      주어진 초성, 중성을 조합하여 종성이 없는 한글 음절을 만든다.
      Parameters:
      choseong - 조합할 초성. Unicode Hangul Jamo 초성 문자 또는 Unicode Hangul Compatibility Jamo 초성 문자여야 한다.
      jungseong - 조합할 중성. Unicode Hangul Jamo 중성 문자 또는 Unicode Hangul Compatibility Jamo 중성 문자여야 한다.
      Returns:
      조합된 한글 음절. 종성이 없는 음절이 만들어진다.
      Throws:
      IllegalArgumentException - 초성, 중성 중 하나라도 유효하지 않은 경우.
    • compose

      public static char compose(char choseong, char jungseong, char jongseong)
      주어진 초성, 중성, 종성을 조합하여 한글 음절을 만든다.
      Parameters:
      choseong - 조합할 초성. Unicode Hangul Jamo 초성 문자 또는 Unicode Hangul Compatibility Jamo 초성 문자여야 한다.
      jungseong - 조합할 중성. Unicode Hangul Jamo 중성 문자 또는 Unicode Hangul Compatibility Jamo 중성 문자여야 한다.
      jongseong - 조합할 종성. Unicode Hangul Jamo 종성 문자 또는 Unicode Hangul Compatibility Jamo 종성 문자여야 한다. 종성이 없는 경우는 ''을 넣거나, 이 매개변수를 아예 생략할 수 있다.
      Returns:
      조합된 한글 음절.
      Throws:
      IllegalArgumentException - 초성, 중성, 종성 중 하나라도 유효하지 않은 경우.
    • compose

      public static char compose(String choseong, String jungseong)
      주어진 초성, 중성을 조합하여 종성이 없는 한글 음절을 만든다.
      Parameters:
      choseong - 조합할 초성. 단자음 또는 복자음으로 이루어진 문자열이어야 한다.
      jungseong - 조합할 중성. 단모음 또는 복모음으로 이루어진 문자열이어야 한다.
      Returns:
      조합된 한글 음절. 종성이 없는 음절이 만들어진다.
      Throws:
      IllegalArgumentException - 초성, 중성 중 하나라도 유효하지 않은
    • compose

      public static char compose(String choseong, String jungseong, String jongseong)
      주어진 초성, 중성, 종성을 조합하여 한글 음절을 만든다.
      Parameters:
      choseong - 조합할 초성. 단자음 또는 복자음으로 이루어진 문자열이어야 한다.
      jungseong - 조합할 중성. 단모음 또는 복모음으로 이루어진 문자열이어야 한다.
      jongseong - 조합할 종성. 단자음 또는 복자음으로 이루어진 문자열이어야 한다. 종성이 없는 경우는 빈 문자열을 넣거나, 이 매개변수를 아예 생략할 수 있다.
      Returns:
      조합된 한글 음절.
      Throws:
      IllegalArgumentException - 초성, 중성, 종성 중 하나라도 유효하지 않은 경우.
    • decompose

      public static String[] decompose(char syllable)
      주어진 한글 음절을 Unicode Hangul Jamo 초성, 중성, 종성으로 분해한다.
      Parameters:
      syllable - 분해할 한글 음절.
      Returns:
      초성, 중성, 종성으로 분해된 문자열 배열. 각 초성, 중성, 종성은 단자모로 분해되어 있다. 종성이 없는 음절은 이 배열의 크기가 2이고, 종성이 있는 음절은 3이다.
      Throws:
      IllegalArgumentException - 주어진 syllable이 한글 음절이 아닐 때.
    • decomposeToCompat

      public static String[] decomposeToCompat(char syllable)
      주어진 한글 음절을 Unicode Hangul Compatibility Jamo 초성, 중성, 종성으로 분해한다.
      Parameters:
      syllable - 분해할 한글 음절.
      Returns:
      초성, 중성, 종성으로 분해된 문자열 배열. 각 초성, 중성, 종성은 단자모로 분해되어 있다. 종성이 없는 음절은 이 배열의 크기가 2이고, 종성이 있는 음절은 3이다.
      Throws:
      IllegalArgumentException - 주어진 syllable이 한글 음절이 아닐 때.