andrewdanilov / php-lingua-stem-ru
Стеммер Портера. Извлечение корня из русского слова, без словаря.
Requires
- php: >=5.6.0
Requires (Dev)
- codeception/base: ^2.2.3
- codeception/specify: ~0.4.3
- codeception/verify: ~0.3.1
This package is auto-updated.
Last update: 2025-03-07 00:16:11 UTC
README
Извлечение корня из русского слова, без словаря.
Стеммер Портера — алгоритм стемминга, опубликованный Мартином Портером в 1980 году. Оригинальная версия стеммера была предназначена для английского языка. Впоследствии Мартин создал проект «Snowball» и, используя основную идею алгоритма, написал стеммеры для распространённых индоевропейских языков, в том числе для русского.
Алгоритм не использует морфологический словарь, а только применяя последовательно ряд правил, отсекает окончания и суффиксы, основываясь на особенностях языка, в связи с чем работает быстро, но не всегда безошибочно.
Установка через композер:
composer require andrewdanilov/php-lingua-stem-ru "~1.0.0"
Пример использования:
$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('Любовь к Родине – это очень сильное чувство.');
Получим:
любов к родин – это очен сильн чувство.