php-stemmer
PHP native implementation of Snowball stemmer
https://snowballstem.org/, (*1)
Accept only UTF-8, (*2)
Languages
Available :
- Catalan (by Orestes Sanchez Benavente orestes@estotienearreglo.es)
- Danish
- Dutch
- English
- Finnish (by Mikko Saari)
- French
- German
- Italian
- Norwegian
- Portuguese
- Romanian
- Russian
- Spanish
- Swedish, (*3)
Installation
For PHP5, use 1.3, (*4)
composer require wamania/php-stemmer "^1.3"
For PHP7 use 2.x (branch 2.x is backward compatible with 1.x), (*5)
composer require wamania/php-stemmer "^2.0"
For PHP^7.3 and PHP^8.0 use 3.x (backward compatible, but phpunit^9 don't work with php < 7.3), (*6)
composer require wamania/php-stemmer "^3.0"
Usage
For 2.x, you should use the factory, (*7)
use Wamania\Snowball\StemmerFactory;
// use ISO_639 (2 or 3 letters) or language name in english
$stemmer = StemmerFactory::create('fr');
$stemmer = StemmerFactory::create ('spanish');
// then
$stem = $stemmer->stem('automĂłvil');
Or the manager, (*8)
use Wamania\Snowball\StemmerManager;
$manager = new StemmerManager();
$stem = $manager->stem('automĂłvil', 'es');
In 1.3, you must instantiate manually, (*9)
use Wamania\Snowball\French;
$stemmer = new French();
$stem = $stemmer->stem('anticonstitutionnellement');