Porter's stemming algorithm for italian
use Lingua::Stem::It; my $stems = Lingua::Stem::It::stem({ -words => $word_list_reference, -locale => 'it', -exceptions => $exceptions_hash, }); my $stem = Lingua::Stem::It::stem_word( $word );
This module applies the Porter Stemming Algorithm to its parameters, returning the stemmed words.
The algorithm is implemented exactly (I hope :-) as described in:
http://snowball.tartarus.org/algorithms/italian/stemmer.html
The code is carefully crafted to work in conjunction with the Lingua::Stem module by Benjamin Franz, from which I've also borrowed some functionalities (caching and exception list).
Stems a list of passed words. Returns an anonymous list reference to the stemmed words. Example: my $stemmed_words = Lingua::Stem::It::stem({ -words => \@words, -locale => 'it', -exceptions => \%exceptions, }); Stems a single word and returns the stem directly. Example: my $stem = Lingua::Stem::It::stem_word( $word );
Sets the level of stem caching. '0' means 'no caching'. This is the default level. '1' means 'cache per run'. This caches stemming results during a single
call to 'stem'.
'2' means 'cache indefinitely'. This caches stemming results until
either the process exits or the 'clear_stem_cache' method is called.
Clears the cache of stemmed words
None by default.
Aldo Calpini, [email protected]
Lingua::Stem
Copyright (c) Aldo Calpini, [email protected]. All rights reserved.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.