-
Notifications
You must be signed in to change notification settings - Fork 34
Az.Morph
Denis Olshin edited this page Jun 14, 2016
·
2 revisions
Kind: global namespace
-
Az :
object-
.Morph(word, [config]) ⇒
Array.<Parse>
-
.Morph(word, [config]) ⇒
Производит морфологический анализ слова. Возвращает возможные варианты разбора по убыванию их правдоподобности.
Kind: static method of Az
Returns: Array.<Parse> - Варианты разбора.
Playground: var Az = require('az');
Az.Morph.init(function() {
console.log(Az.Morph('стали'));
});
| Param | Type | Default | Description |
|---|---|---|---|
| word | string |
Слово, которое следует разобрать. | |
| [config] | Object |
Опции разбора. | |
| [config.ignoreCase] | boolean |
False |
Следует ли игнорировать регистр слов (в основном это означает возможность написания имен собственных и инициалов с маленькой буквы). |
| [config.replacements] | Object |
{ 'е': 'ё' } |
Допустимые замены букв при поиске слов в словаре. Ключи объекта — заменяемые буквы в разбираемом слове, соответствующие им значения — буквы в словарных словах, которым допустимо встречаться вместо заменяемых. По умолчанию буква «е» может соответствовать букве «ё» в словарных словах. |
| [config.stutter] | number |
Infinity |
«Заикание». Устраняет повторения букв (как с дефисом - «не-е-ет», так и без - «нееет»). Infinity не ограничивает максимальное число повторений (суммарно во всем слове). 0 или false чтобы отключить. |
| [config.typos] |
number | 'auto'
|
0 |
Опечатки. Максимальное количество опечаток в слове. Опечаткой считается: - лишняя буква в слове - пропущенная буква в слове (TODO: самый медленный тип опечаток, стоит сделать опциональным) - не та буква в слове (если правильная буква стоит рядом на клавиатуре) - переставленные местами соседние буквы 0 или false чтобы отключить. 'auto': - 0, если слово короче 5 букв - 1, если слово короче 10 букв (но только если не нашлось варианта разбора без опечаток) - 2 в противном случае (но только если не нашлось варианта разбора без опечаток или с 1 опечаткой) |
| [config.parsers] | Array.<string> |
Список применяемых парсеров (см. поля объекта Az.Morph.Parsers) в порядке применения (т.е. стоящие в начале имеют наивысший приоритет). Вопросительный знак означает, что данный парсер не терминальный, то есть варианты собираются до первого терминального парсера. Иными словами, если мы дошли до какого-то парсера, значит все стоящие перед ним терминальные парсеры либо не дали результата совсем, либо дали только с опечатками. (парсер в терминологии pymorphy2 — анализатор) | |
| [config.forceParse] | boolean |
False |
Всегда возвращать хотя бы один вариант разбора (как это делает pymorphy2), даже если совсем ничего не получилось. |
-
.Morph(word, [config]) ⇒
Array.<Parse>
Задает опции морфологического анализатора по умолчанию.
Kind: static method of Morph
See: Morph
| Param | Type | Description |
|---|---|---|
| config | Object |
Опции анализатора. |
Инициализирует анализатор, загружая необходимые для работы словари из указанной директории. Эту функцию необходимо вызвать (и дождаться срабатывания коллбэка) до любых действий с модулем.
Kind: static method of Morph
| Param | Type | Description |
|---|---|---|
| [path] | string |
Директория, содержащая файлы 'words.dawg', 'grammemes.json' и т.д. По умолчанию директория 'dicts' в данном модуле. |
| callback | function |
Коллбэк, вызываемый после завершения загрузки всех словарей. |