Skip to content
/ mystem Public

Wrapper for Yandex mystem morphological analysis program

License

Notifications You must be signed in to change notification settings

aotd1/mystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Latest Stable Version Total Downloads Build Status Scrutinizer Code Quality License

Использование Mystem

Простая обертка для Yandex mystem. Работает исключительно с русской морфологией.

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

Установка

Библиотека доступна в Packagist (aotd/mystem) и устанавливается через Composer.

php composer.phar require aotd/mystem 'dev-master'

Никто не запрещает просто скачать исходники с GitHub и использовать любой PSR-0 автолоадер.

Использование

Все примеры собраны в папке examples.

  • antimat - проверка текста на наличие обсценной лексики.
  • jabberwocky - стемминг части стихотворения «Бармаглот» (в переводе Дины Орловской).
  • verb-tense - определение времени глагола

Использование с Yii

Устанавливаем библиотеку через composer

{
    "require": {
        "aotd/mystem": "dev-master"
    },
    "scripts": {
        "post-install-cmd": [ "MystemBinaryInstaller::install" ],
        "post-update-cmd":  [ "MystemBinaryInstaller::update" ]
    },
}
$ composer install

Секция scripts необходима для установки бинарного файла mystem от Яндекса в зависимости от целевой платформы (Win/Mac OS/Linux/FreeBSD)

Складываем ExtMystem.php в /protected/extensions/Mystem, добавлеям в конфиг в секцию components:

    ...
    'mystem' => array(
        'class' => 'ext.Mystem.ExtMystem',
//      'falsePositive' => __DIR__ . '/mystem/false-positive.txt',
//      'falsePositiveNormalized' => __DIR__ . '/mystem/false-positive-normalized.txt',
//      'falseNegative' => __DIR__ . '/mystem/false-negative.txt',
//      'falseNegativeNormalized' => __DIR__ . '/mystem/false-negative-normalized.txt',
    ),
    ...

Опционально указываем списки ложно-положительных, ложно-отрицательных слов для фильтра обсценной лексики...

    Yii::app()->mystem->checkArticle('Текст для проверки на наличие матов');

Profit!

P.S. Никто не отменяет великость и могучесть русского языка, потому всецело доверять такому решению не стоит :)

About

Wrapper for Yandex mystem morphological analysis program

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages