Lucy::Analysis::PolyAnalyzer - Multiple Analyzers in series.
my $schema = Lucy::Plan::Schema->new; my $polyanalyzer = Lucy::Analysis::PolyAnalyzer->new( analyzers => \@analyzers, ); my $type = Lucy::Plan::FullTextType->new( analyzer => $polyanalyzer, ); $schema->spec_field( name => 'title', type => $type ); $schema->spec_field( name => 'content', type => $type );
A PolyAnalyzer is a series of Analyzers, each of which will be called upon to “analyze” text in turn. You can either provide the Analyzers yourself, or you can specify a supported language, in which case a PolyAnalyzer consisting of a CaseFolder, a RegexTokenizer, and a SnowballStemmer will be generated for you.
The language parameter is DEPRECATED. Use EasyAnalyzer instead.
Supported languages:
en => English, da => Danish, de => German, es => Spanish, fi => Finnish, fr => French, hu => Hungarian, it => Italian, nl => Dutch, no => Norwegian, pt => Portuguese, ro => Romanian, ru => Russian, sv => Swedish, tr => Turkish,
my $tokenizer = Lucy::Analysis::StandardTokenizer->new; my $normalizer = Lucy::Analysis::Normalizer->new; my $stemmer = Lucy::Analysis::SnowballStemmer->new( language => 'en' ); my $polyanalyzer = Lucy::Analysis::PolyAnalyzer->new( analyzers => [ $tokenizer, $normalizer, $stemmer, ], );
Create a new PolyAnalyzer.
my $arrayref = $poly_analyzer->get_analyzers();
Getter for “analyzers” member.
my $inversion = $poly_analyzer->transform($inversion);
Take a single Inversion as input and returns an Inversion, either the same one (presumably transformed in some way), or a new one.
Lucy::Analysis::PolyAnalyzer isa Lucy::Analysis::Analyzer isa Clownfish::Obj.
Copyright © 2010-2015 The Apache Software Foundation, Licensed under the
Apache License, Version 2.0.
Apache Lucy, Lucy, Apache, the Apache feather logo, and the Apache Lucy project logo are trademarks of The
Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their
respective owners.