cox.postposition
한글, 영문, 숫자에 대한 한글 조사를 선택하거나 적용합니다. 단, 영문은 모든 상황에 대해 100% 지원하지 않습니다.
예제
설치하기
NPM
$ npm install cox-postposition
npm install
을 통해 설치하는 경우 ES6
문법으로 작성한 원본 JS 파일을 참조합니다.
따라서 ES6
를 지원하지 않는 환경에서는 UMD 사용법을 참고하여 사용하시기 바랍니다
CDN
// jsdelivrhttps://cdn.jsdelivr.net/npm/cox-postposition@1.4.1/dist/cox.postposition.min.js
DOWNLOAD
사용법
ES6
; const kor = postposition;const eng = postposition;const num = postposition;const sentence1 = postposition;const sentence2 = postposition; console; // 고양이를console; // cat을 ('씨에이티를'이 아닌 '캣을'로 처리)console; // 8을console; // 바다로 이동하면 잠수함을 얻습니다.console; // 바다로 이동하면 잠수함을 얻습니다.
UMD - ES6 Module을 지원하지 않는 환경
const postposition = ; const kor = postposition;const eng = postposition;const num = postposition;const sentence1 = postposition;const sentence2 = postposition; console; // 고양이를console; // cat을 ('씨에이티를'이 아닌 '캣을'로 처리)console; // 8을console; // 바다로 이동하면 잠수함을 얻습니다.console; // 바다로 이동하면 잠수함을 얻습니다.
HTML
Details
; // 종성이 있는지 여부 (종성이 있으면 true)postposition; // falsepostposition; // true // 로/으로에 대한 종성이 있는지 여부 ('ㄹ'은 종성이 없는 것으로 간주)postposition; // falsepostposition; // falsepostposition; // true // 입력한 단어에 따른 조사 반환 (이/가를 처리하려면 '이'나 '가'를 입력)postposition; // 가postposition; // 가postposition; // 가 // 입력한 단어에 조사 적용 (한글, 영어, 숫자에 대응)postposition; // cat을postposition; // cat을postposition; // [cat]을 // 은/는, 이/가, 을/를, 과/와, 나/이나, 로/으로 이외의 조사 처리 (종성이 없는 조건을 먼저 입력)postposition; // 고양이야postposition; // 야옹아 // 입력한 문장에서 기본 지원 조사 적용postposition; // 예제1과 예제2를 확인하세요.postposition; // 예제[1]과 예제[2]를 확인하세요. // 입력한 문장에서 사용자 정의 조사 적용postposition; // 예제1과 예제2를 확인하세요.postposition; // 예제[1]과 예제[2]를 확인하세요.postposition; // 음식이면 A, food면 B // 지정한 조사만 처리하는 함수 생성const putEul = postposition;const putRang = postposition; ; // 바위를; // rock을; // 바위랑; // rock이랑
개별 메서드만 사용할 수도 있습니다.
; // 종성이 있는지 여부; // false // 입력한 단어에 따른 조사 반환; // 가 // 입력한 단어에 조사 적용; // cat을 // 입력한 문장에 조사 적용; // 하늘과 땅; // 하늘과 땅 // 지정한 조사만 처리 함수 생성const putEul = ; ; // 바위를
Method
check( text[, type] )
종성이 있는지 여부를 체크합니다.
text
: [필수] 종성이 있는지를 체크할 단어type
: [선택] 조사 타입('로/으로'인 경우 사용)return
: 종성이 있는지 여부
조사가 로/으로
가 아닌 경우는 type
파라미터를 생략해도 됩니다.
// 종성이 없는 단어postposition; // falsepostposition; // falsepostposition; // false // 종성이 있는 단어postposition; // truepostposition; // truepostposition; // true
조사가 로/으로
인 경우는 종성이 ㄹ
이면 종성이 없는 것으로 간주합니다. 단 로/으로
조사 타입에 대한 결과를 반환하는 것이지 로
나 으로
에 대해서 파라미터와 비교한 결과를 반환하는 것이 아닙니다.
// 종성이 'ㄹ'인 경우postposition; // falsepostposition; // falsepostposition; // false
pick( text, type[, special] )
단어에 맞는 조사를 반환합니다.
text
: [필수] 종성을 적용할 단어type
: [필수] 조사 타입, 종성이 없을 때 조사special
: [선택] 종성이 있을 때 조사return
: 적용할 조사
다음 조사에 대해서는 special
파라미터를 생략하고, 종성 유무와 관계 없이 둘 중 하나만 입력하면 됩니다.
- 는/은
- 가/이
- 와/과
- 를/을
- 나/이나
- 로/으로
// 종성이 없는 단어postposition; // 가postposition; // 가postposition; // 가 // 종성이 있는 단어postposition; // 이postposition; // 이postposition; // 이 // 조사가 '로/으로'이고 종성이 'ㄹ'인 경우postposition; // 로postposition; // 로postposition; // 로
기본 조사에서 지원하지 않는 경우는 직접 지정할 수 있습니다. 종성이 없는 조건, 종성이 있는 조건 순으로 파라미터를 전달합니다.
postposition; // 야postposition; // 이랑postposition; // 이면
put( text, type[, special] )
단어에 맞는 조사를 적용한 글자를 반환합니다.
text
: [필수] 종성을 적용할 단어type
: [필수] 조사 타입, 종성이 없을 때 조사special
: [선택] 종성이 있을 때 조사return
: 단어에 조사를 적용한 글자
pick
메서드와 동일한 처리를 하지만 대상 글자에 조사를 적용한 글자가 반환됩니다.
// 종성이 없는 단어postposition; // 바다가postposition; // sea가postposition; // 2가postposition; // [9]가 // 종성이 있는 단어postposition; // 필름이postposition; // film이postposition; // 6이postposition; // "7"이 // 조사가 '로/으로'이고 종성이 'ㄹ'인 경우postposition; // 가을로postposition; // feel로postposition; // 7로postposition; // (8)로
pick
메서드와 동일하게 종성 여부에 따른 조사를 직접 지정할 수 있습니다.
postposition; // 바다야postposition; // swimming이랑postposition; // 7이면postposition; // 드림(dream)이라서
fix( type[, special] )
특정 조사를 처리하는 함수를 반환합니다.
type
: 조사 타입, 종성이 없을 때 조사special
: [선택] 종성이 있을 때 조사return
: 지정한 조사를 처리하는 함수 반환
특정 조사를 반복해서 처리하는 경우는 원하는 조사를 지정하여 함수를 생성할 수 있습니다.
// 은/는을 처리하는 함수const eun = postposition; // 을/를을 처리하는 함수const eul = postposition; // 아/야를 처리하는 함수const ya = postposition; ; // 구름은; // 구름을; // 구름아
parse( sentence )
문장에서
단어[조사*]
혹은단어[종성이 없을 때 조사|종성이 있을 때 조사]
패턴을 찾아서 해당 단어의 조사를 처리합니다.
sentence
: 처리할 문장
문장에서 특정 단어에 대한 조사를 처리할 때 사용할 수 있습니다.
const result1 = postposition;const result2 = postposition; console; // 망치를 만드려면 손잡이가 필요합니다.console; // 그림[P]와 그림[L]은 animal을 포함합니다.
단어[조사*]
패턴을 이용하면 문장에서 기본 지원 조사를 처리할 때 사용할 수 있습니다.
const result1 = postposition;const result2 = postposition; console; // 망치를 만드려면 손잡이가 필요합니다.console; // 그림[P]와 그림[L]은 animal을 포함합니다.
Guide
한글은 종성에 따라 조사가 결정되므로 종성 유무를 파악하여 조사를 구분하도록 처리하고 있습니다. 단, 로/으로
에 한해서 ㄹ
종성은 없는 것으로 예외처리합니다.
영문의 경우는 영어 발음을 기준으로 처리합니다. 단, 영문의 경우는 발음을 표기하는 방식에 규칙이 없기 때문에 흔한 상황 위주로 분류하고 특수한 사례를 개별 관리하고 있습니다.
// me로 끝나는 단어me -> me[미]는some - some[썸]은 // oot로 끝나는 단어root -> root[루트]를foot -> foot[풋]을
한글의 영문 표기법에 따른 발음은 고려하지 않습니다.
[Ji-sung Park] park -> park[파크]를, 팍(X)[So Ji-sub] sub -> sub[서브]를, 섭(X)
숫자의 경우는 한글 발음을 기준으로 합니다.
동물1 -> 동물1[일]을animal3 -> animal3[삼]을, 쓰리(X)
License
MIT