GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
KinoSearch1::QueryParser::QueryParser(3) User Contributed Perl Documentation KinoSearch1::QueryParser::QueryParser(3)

KinoSearch1::QueryParser::QueryParser - transform a string into a Query object

    my $query_parser = KinoSearch1::QueryParser::QueryParser->new(
        analyzer => $analyzer,
        fields   => [ 'bodytext' ],
    );
    my $query = $query_parser->parse( $query_string );
    my $hits  = $searcher->search( query => $query );

The QueryParser accepts search strings as input and produces Query objects, suitable for feeding into KinoSearch1::Searcher.

The following constructs are recognized by QueryParser.
  • Boolean operators 'AND', 'OR', and 'AND NOT'.
  • Prepented +plus and -minus, indicating that the labeled entity should be either required or forbidden -- be it a single word, a phrase, or a parenthetical group.
  • Logical groups, delimited by parentheses.
  • Phrases, delimited by double quotes.
  • Field-specific terms, in the form of "fieldname:termtext". (The field specified by fieldname will be used instead of the QueryParser's default fields).

    A field can also be given to a logical group, in which case it is the same as if the field had been prepended onto every term in the group. For example: "foo:(bar baz)" is the same as "foo:bar foo:baz".

    my $query_parser = KinoSearch1::QueryParser::QueryParser->new(
        analyzer       => $analyzer,       # required
        fields         => [ 'bodytext' ],  # required
        default_boolop => 'AND',           # default: 'OR'
    );

Constructor. Takes hash-style parameters:

  • analyzer - An object which subclasses KinoSearch1::Analysis::Analyzer. This must be identical to the Analyzer used at index-time, or the results won't match up.
  • fields - the names of the fields which will be searched against. Must be supplied as an arrayref.
  • default_field - deprecated. Use "fields" instead.
  • default_boolop - two possible values: 'AND' and 'OR'. The default is 'OR', which means: return documents which match any of the query terms. If you want only documents which match all of the query terms, set this to 'AND'.

    my $query = $query_parser->parse( $query_string );

Turn a query string into a Query object. Depending on the contents of the query string, the returned object could be any one of several subclasses of KinoSearch1::Search::Query.

Copyright 2005-2010 Marvin Humphrey

See KinoSearch1 version 1.01.
2022-04-08 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.