nxp/russian-porter-stemmer

俄语波特词干提取器

1.0.0 2015-06-10 12:07 UTC

This package is auto-updated.

Last update: 2024-09-09 12:26:08 UTC


README

描述

此词干提取器是stem_russian_unicode扩展的替代品。

与stem_russian_unicode扩展的比较

优点

  1. 不依赖于PHP的外部扩展。词干提取器完全用PHP编写。
  2. 无Unicode问题。stem_russian_unicode依赖于SET_LOCALE,如果设置不正确,可能会破坏Unicode字符串。
  3. 易于根据项目需求进行修改。如果是扩展,在更改工作逻辑时,需要重新编译。
  4. 要求PHP版本 >=5.3(感谢usernam3的pull-request)

缺点

由于此词干提取器是用PHP编写的,并使用正则表达式,因此在速度上可能不如用C编写的编译型扩展。

安装

php composer.phar require nxp/russian-porter-stemmer

使用

<?php
$text = '...';
require __DIR__ . '/vendor/autoload.php';
$stemmer = new \NXP\Stemmer();
$stemmed = [];
foreach (explode(' ', $text) as $word) {
    $stemmed[] = $stemmer->getWordBase($word);
}
$result = implode(' ', $stemmed);

与经典波特词干提取器的区别

唯一的区别在于,在此实现中,字母“ё”是独立的元音,而不是字母“е”。

MIT许可证