Skip to content

Az.Morph

Denis Olshin edited this page Jun 14, 2016 · 2 revisions

Az : object

Kind: global namespace

Az.Morph(word, [config]) ⇒ Array.<Parse>

Производит морфологический анализ слова. Возвращает возможные варианты разбора по убыванию их правдоподобности.

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.setDefaults(config)

Задает опции морфологического анализатора по умолчанию.

Kind: static method of Morph
See: Morph

Param Type Description
config Object Опции анализатора.

Morph.init([path], callback)

Инициализирует анализатор, загружая необходимые для работы словари из указанной директории. Эту функцию необходимо вызвать (и дождаться срабатывания коллбэка) до любых действий с модулем.

Kind: static method of Morph

Param Type Description
[path] string Директория, содержащая файлы 'words.dawg', 'grammemes.json' и т.д. По умолчанию директория 'dicts' в данном модуле.
callback function Коллбэк, вызываемый после завершения загрузки всех словарей.

Clone this wiki locally