Lingua::Stem::Patch - Patch stemmers for Esperanto and Ido
This document describes Lingua::Stem::Patch v0.06.
use Lingua::Stem::Patch; # create Esperanto stemmer $stemmer = Lingua::Stem::Patch->new(language => 'eo'); # get stem for word $stem = $stemmer->stem($word); # get list of stems for list of words @stems = $stemmer->stem(@words);
This module contains a collection of stemmers for multiple languages using the Patch stemming algorithms. The languages currently implemented are Esperanto, Ido, and Polish.
This is a new project under active development and the current stemming algorithms are likely to change.
The following language codes are currently supported.
┌───────────┬────┐ │ Esperanto │ eo │ │ Ido │ io │ │ Polish │ pl │ └───────────┴────┘
They are in the two-letter ISO 639-1 format and are case-insensitive but are always returned in lowercase when requested.
# instantiate a stemmer object $stemmer = Lingua::Stem::Patch->new(language => $language); # get current language $language = $stemmer->language; # change language $stemmer->language($language);
By default a light stemmer will be used, but when aggressive is set to true, an aggressive stemmer will be used instead.
aggressive
$stemmer->aggressive(1);
Accepts a list of words, stems each word, and returns a list of stems. The list returned will always have the same number of elements in the same order as the list provided. When no stemming rules apply to a word, the original word is returned.
@stems = $stemmer->stem(@words); # get the stem for a single word $stem = $stemmer->stem($word);
The words should be provided as character strings and the stems are returned as character strings. Byte strings in arbitrary character encodings are intentionally not supported.
Returns a list of supported two-letter language codes using lowercase letters.
# object method @languages = $stemmer->languages; # class method @languages = Lingua::Stem::Patch->languages;
Lingua::Stem::Any provides a unified interface to any stemmer on CPAN, including this module, as well as additional features like normalization, casefolding, and in-place stemming.
Nick Patch <patch@cpan.org>
© 2014–2015 Nick Patch
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Lingua::Stem::Patch, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Lingua::Stem::Patch
CPAN shell
perl -MCPAN -e shell install Lingua::Stem::Patch
For more information on module installation, please visit the detailed CPAN module installation guide.