ladamalina/lingua-stem-ru

Стеммер Портера. Извлечение корня из русского слова, без словаря.

dev-master 2017-09-24 06:29 UTC

This package is auto-updated.

Last update: 2024-04-14 16:20:00 UTC


README

Извлечение корня из русского слова, без словаря.

Стеммер Портера — алгоритм стемминга, опубликованный Мартином Портером в 1980 году. Оригинальная версия стеммера была предназначена для английского языка. Впоследствии Мартин создал проект «Snowball» и, используя основную идею алгоритма, написал стеммеры для распространённых индоевропейских языков, в том числе для русского.

Алгоритм не использует морфологический словарь, а только применяя последовательно ряд правил, отсекает окончания и суффиксы, основываясь на особенностях языка, в связи с чем работает быстро, но не всегда безошибочно.

Пример использования:

$stemmer = new LinguaStemRu();
echo $stemmer->stem_word('Автомобиль') . "<br/>";
echo $stemmer->stem_word('Автомобилем') . "<br/>";
echo $stemmer->stem_word('Автомобиля') . "<br/>";

В результате получим три раза слово автомобил.

$stemmer = new LinguaStemRu();
echo $stemmer->stem_text('Любовь к Родине – это очень сильное чувство.');

Получим:

любов к родин – это очен сильн чувство.