Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

Plucene::Plugin::Analyzer::MetaphoneAnalyzer
Metaphone analyzer

Plucene::Plugin::Analyzer::MetaphoneAnalyzer - Metaphone analyzer


NAME

Plucene::Plugin::Analyzer::MetaphoneAnalyzer - Metaphone analyzer


DESCRIPTION

Filters StandardTokenizer with MetaphoneFilter


EXAMPLE


  #!/usr/bin/perl

  

  use strict;

  use Plucene;

  use Plucene::Index::Writer;

  use Plucene::Plugin::Analyzer::MetaphoneAnalyzer;

  use Plucene::Search::IndexSearcher;

  use Plucene::QueryParser;

  

  my $db = "plucene_index";

  

  my $writer = Plucene::Index::Writer->new($db, Plucene::Plugin::Analyzer::MetaphoneAnalyzer->new(), 1);

  

  $doc = Plucene::Document->new();

  $doc->add(Plucene::Document::Field->Keyword(filename => 'test2.html'));

  $doc->add(Plucene::Document::Field->Text(title => 'Another file title'));

  $doc->add(Plucene::Document::Field->UnStored(content => 'Nothing HERE.'));

  $writer->add_document($doc);

  

  $writer->optimize;

  

  my $searcher = Plucene::Search::IndexSearcher->new($db);

  my $parser = Plucene::QueryParser->new({

        analyzer => Plucene::Plugin::Analyzer::MetaphoneAnalyzer->new(),

        default => 'content',

  });

  my $parsed = $parser->parse("nothink");

  

  my @docs;

  my $hc = Plucene::Search::HitCollector->new(

        collect => sub {

                my ($self, $doc, $score) = @_;

                my $res = eval { $searcher->doc($doc); };

                push @docs, $res if res;

        },

  );

  

  $searcher->search_hc($parsed, $hc);

  my @results = map {{

        filename => $_->get('filename')->string,

        title => $_->get('title')->string,

  }} @docs;

  

  print "Results:\n";

  foreach my $result (@results) {

        print "\t$result->{title} ($result->{filename})\n";

  }


AUTHOR

Alan Schwartz alansz@uic.edu


LICENSE

You may distribute this code under the same terms as Plucene himself.

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy