README
korean-corrector
레벤슈타인 거리 알고리즘은 맞춤법을 교정하는데 사용될 수 있습니다.
그러나, 영어와 달리 여러 개의 초성으로 이루어진 한글은, 짧은 단어일 경우 레벤슈타인 거리가 같게 나오는 경우가 많습니다.
레벤슈타인 거리 알고리즘과 hangul-js를 이용하여, 초성 단위로 분리한 두 한글 단어(문장)에 대한 레벤슈타인 거리를 구하고, 가장 거리가 짧은 단어(문장)으로 맞춤법을 고칠 수 있습니다.
설치 및 사용방법
npm install korean-corrector
const korrector = require('korean-corrector')
API
korrector.getDistance
두 단어(문장) 사이의 레벤슈타인 거리를 반환합니다.
korrector.getDistance(fisrtWord:String, secondWord:String, chosung:boolean = true)
const korrector = require('korean-corrector')
korrector.getDistance('공부', '공브'); // 1
korrector.getDistance('학기', '학기르', false)
// 1 (chosung=false시 초성으로 분리하지 않음)
korrector.correct
해당 단어(문장) 과 배열의 요소들의 레벤슈타인 거리를 비교하여, 최소가 되는 요소로 변경합니다.
korrector.correct(word:String, arr:Array, chosung:boolean = true)
const korrector = require('korean-corrector')
korrector.correct('공불', ['공부','산불','공장']); // 공부
korrector.correct('공불', ['공부','강물','공부방'], false);
// 공부 (chosung=false시 초성으로 분리하지 않음)
korrector.correctByDict
해당 단어(문장) 과 자주 쓰이는 한국어 낱말 5800개의 레벤슈타인 거리를 비교하여, 최소가 되는 요소로 변경합니다.
자주 쓰이는 한국어 낱말 5800
korrector.correct(word:String, chosung:boolean = true)
const korrector = require('korean-corrector')
korrector.correctByDict('아삐'); // 아빠
라이센스
MIT @ Han SeungWoo
MIT @ hangul-js