koalanlp/ExtUtil

여러 편의기능을 모아놓은 Module입니다.

Source:
Example
import * as ExtUtil from 'koalanlp/ExtUtil';

Members

(static, constant) HanFirstList :ReadonlyArray.<string>

Source:

초성 조합형 문자열 리스트 (UNICODE 순서)

'ㄱ', 'ㄲ', 'ㄴ', 'ㄷ', 'ㄸ', 'ㄹ', 'ㅁ', 'ㅂ', 'ㅃ', 'ㅅ', 'ㅆ', 'ㅇ', 'ㅈ', 'ㅉ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ', 'ㅎ'

Type:
  • ReadonlyArray.<string>
Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.HanFirstList[0]);

(static, constant) HanSecondList :ReadonlyArray.<string>

Source:

중성 조합형 문자열 리스트 (UNICODE 순서)

'ㅏ', 'ㅐ', 'ㅑ', 'ㅒ', 'ㅓ', 'ㅔ', 'ㅕ', 'ㅖ', 'ㅗ', 'ㅘ', 'ㅙ', 'ㅚ', 'ㅛ', 'ㅜ', 'ㅝ', 'ㅞ', 'ㅟ', 'ㅠ', 'ㅡ', 'ㅢ', 'ㅣ'

Type:
  • ReadonlyArray.<string>
Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.HanSecondList[0]);

(static, constant) HanLastList :ReadonlyArray.<string>

Source:

종성 조합형 문자열 리스트 (UNICODE 순서). 가장 첫번째는 null (받침 없음)

undefined, 'ㄱ', 'ㄲ', 'ㄳ', 'ㄴ', 'ㄵ', 'ㄶ', 'ㄷ', 'ㄹ', 'ㄺ', 'ㄻ', 'ㄼ', 'ㄽ', 'ㄾ', 'ㄿ', 'ㅀ', 'ㅁ', 'ㅂ', 'ㅄ', 'ㅅ', 'ㅆ', 'ㅇ', 'ㅈ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ', 'ㅎ'

Type:
  • ReadonlyArray.<string>
Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.HanLastList[0]);

(static, constant) ChoToJong :Readonly.<Map.<string, string>>

Source:

초성 문자를 종성 조합형 문자로 변경할 수 있는 map

Type:
  • Readonly.<Map.<string, string>>
Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.ChoToJong.get('ㄵ'));

Methods

(static) alphaToHangul(textnon-null) → {string}

Source:

주어진 문자열에서 알파벳이 발음되는 대로 국문 문자열로 표기하여 값으로 돌려줍니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.alphaToHangul("갤럭시S"));
Parameters:
Name Type Description
text string

알파벳을 발음할 문자열

Returns:

국문 발음 표기된 문자열

Type
string

(static) hangulToAlpha(textnon-null) → {string}

Source:

주어진 문자열에 적힌 알파벳 발음을 알파벳으로 변환하여 문자열로 반환합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.hangulToAlpah("갤럭시에스"));
Parameters:
Name Type Description
text string

국문 발음 표기된 문자열

Returns:

영문 변환된 문자열

Type
string

(static) isAlphaPronounced(textnon-null) → {boolean}

Source:

주어진 문자열이 알파벳이 발음되는 대로 표기된 문자열인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isAlphaPronounced("갤럭시에스"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

영문 발음으로만 구성되었다면 true

Type
boolean

(static) isHanja(textnon-null) → {Array.<boolean>}

Source:

문자열의 각 문자가 한자 범위인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isHanja("貝波通水"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 한자인지 아닌지를 표기한 리스트. 한자라면 True.

Type
Array.<boolean>

(static) isCJKHanja(textnon-null) → {Array.<boolean>}

Source:

현재 문자가 한중일 통합한자, 통합한자 확장 - A, 호환용 한자 범위인지 확인합니다. (국사편찬위원회 한자음가사전은 해당 범위에서만 정의되어 있어, 별도 확인합니다.)

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isCJKHanja("貝波通水"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 한자인지 아닌지를 표기한 리스트. 한자라면 True.

Type
Array.<boolean>

(static) hanjaToHangul(textnon-null, headCorrectionopt) → {string}

Source:

국사편찬위원회 한자음가사전에 따라 한자 표기된 내용을 국문 표기로 전환합니다.

참고:

  • [headCorrection] 값이 true인 경우, whitespace에 따라오는 문자에 두음법칙을 자동 적용함. (기본값 true)
  • 단, 다음 의존명사는 예외: 냥(兩), 년(年), 리(里), 리(理), 량(輛)
  • 다음 두음법칙은 사전을 조회하지 않기 때문에 적용되지 않음에 유의
    • 한자 파생어나 합성어에서 원 단어의 두음법칙: 예) "신여성"이 옳은 표기이나 "신녀성"으로 표기됨
    • 외자가 아닌 이름: 예) "허난설헌"이 옳은 표기이나 "허란설헌"으로 표기됨
Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.hanjaToHangul("貝波通水"));
Parameters:
Name Type Attributes Default Description
text string

국문 표기로 전환할 문자열

headCorrection boolean <optional>
true

두음법칙 적용 여부

Returns:

국문 표기로 전환된 문자열

Type
string

(static) isCompleteHangul(textnon-null) → {Array.<boolean>}

Source:

현재 문자가 초성, 중성, 종성(선택적)을 다 갖춘 문자인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isCompleteHangul("Sing! 노래하라"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 확인여부를 표기한 리스트. 맞다면 True.

Type
Array.<boolean>

(static) isIncompleteHangul(textnon-null) → {Array.<boolean>}

Source:

현재 문자가 불완전한 한글 문자인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isIncompleteHangul("Sing! 노래하라"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 확인여부를 표기한 리스트. 맞다면 True.

Type
Array.<boolean>

(static) isHangul(textnon-null) → {Array.<boolean>}

Source:

현재 문자가 한글 완성형 또는 조합용 문자인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isHangul("Sing! 노래하라"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 확인여부를 표기한 리스트. 맞다면 True.

Type
Array.<boolean>

(static) isHangulEnding(textnon-null) → {boolean}

Source:

현재 문자열이 한글 (완성/조합)로 끝나는지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isHangulEnding("Sing! 노래하라"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

맞다면 True.

Type
boolean

(static) isChosungJamo(textnon-null) → {Array.<boolean>}

Source:

현재 문자가 현대 한글 초성 자음 문자인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isChosungJamo("\u1100"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 확인여부를 표기한 리스트. 맞다면 True.

Type
Array.<boolean>

(static) isJungsungJamo(textnon-null) → {Array.<boolean>}

Source:

현재 문자가 현대 한글 중성 모음 문자인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isJungsungJamo("\u1161"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 확인여부를 표기한 리스트. 맞다면 True.

Type
Array.<boolean>

(static) isJongsungJamo(textnon-null) → {Array.<boolean>}

Source:

현재 문자가 현대 한글 종성 자음 문자인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isJungsungJamo("\u11A8"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

문자열 문자의 위치마다 확인여부를 표기한 리스트. 맞다면 True.

Type
Array.<boolean>

(static) isJongsungEnding(textnon-null) → {boolean}

Source:

현재 문자열이 종성으로 끝인지 확인합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.isJongsungEnding("Sing! 노래하라"));
Parameters:
Name Type Description
text string

확인할 문자열

Returns:

맞다면 True.

Type
boolean

(static) getChosung(textnon-null) → {Array.<string>}

Source:

현재 문자에서 초성 자음문자를 분리합니다. 초성이 없으면 None.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.getChosung("제주도의 푸른 밤"));
Parameters:
Name Type Description
text string

분리할 문자열

Returns:

분리된 각 초성이 들어간 리스트.

Type
Array.<string>

(static) getJungsung(textnon-null) → {Array.<string>}

Source:

현재 문자에서 중성 모음문자를 분리합니다. 중성이 없으면 None.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.getJungsung("제주도의 푸른 밤"));
Parameters:
Name Type Description
text string

분리할 문자열

Returns:

분리된 각 중성이 들어간 리스트.

Type
Array.<string>

(static) getJongsung(textnon-null) → {Array.<string>}

Source:

현재 문자에서 종성 자음문자를 분리합니다. 종성이 없으면 None.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.getJongsung("제주도의 푸른 밤"));
Parameters:
Name Type Description
text string

분리할 문자열

Returns:

분리된 각 종성이 들어간 리스트.

Type
Array.<string>

(static) dissembleHangul(text) → {string}

Source:

현재 문자열을 초성, 중성, 종성 자음문자로 분리하여 새 문자열을 만듭니다. 종성이 없으면 종성은 쓰지 않습니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.dissembleHangul("제주도의 푸른 밤"));
Parameters:
Name Type Description
text string

분해할 문자열

Returns:

분해된 문자열

Type
string

(static) assembleHangulTriple(choopt, jungopt, jongopt) → {string}

Source:

초성을 [cho] 문자로, 중성을 [jung] 문자로, 종성을 [jong] 문자로 갖는 한글 문자를 재구성합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.assembleHangulTriple('\u1100', '\u1161', '\u11A8'));
Parameters:
Name Type Attributes Description
cho string <optional>

초성 문자. (0x1100-1112) 기본값 ㅇ 자모

jung string <optional>

중성 문자, (0x1161-1175) 기본값 ㅡ 자모

jong string <optional>

종성 문자, (0x11a8-11c2) 기본값 종성 없음

Returns:

초성, 중성, 종성을 조합하여 문자를 만듭니다.

Type
string

(static) assembleHangul(text) → {string}

Source:

주어진 문자열에서 초성, 중성, 종성이 연달아 나오는 경우 이를 조합하여 한글 문자를 재구성합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.assembleHangul("제주도의 푸른 밤인 \u1100\u1161\u11A8"));
Parameters:
Name Type Description
text string

조합할 문자열

Returns:

조합형 문자들이 조합된 문자열. 조합이 불가능한 문자는 그대로 남습니다.

Type
string

(static) correctVerbApply(verb, isVerb, rest) → {string}

Source:

주어진 용언의 원형 [verb]이 뒷 부분 [rest]와 같이 어미가 붙어 활용될 때, 불규칙 활용 용언과 모음조화를 교정합니다.

Example
import * as ExtUtil from 'koalanlp/ExtUtil';
console.log(ExtUtil.correctVerbApply("밀리",true,"어"));
Parameters:
Name Type Description
verb string

용언 원형인 어근을 표현한 String. '-다.' 와 같은 어미는 없는 어근 상태입니다.

isVerb boolean

동사인지 형용사인지 나타내는 지시자. 동사이면 true.

rest string

어근에 붙일 어미를 표현한 String.

Returns:

모음조화나 불규칙 활용이 교정된 원형+어미 결합

Type
string