new <database>
QueryParser constructor.
set_stemmer <stemmer>
Set the Search::Xapian::Stem object to be used for stemming query terms.
set_stemming_strategy <strategy>
Set the stemming strategy. Valid values are "STEM_ALL", "STEM_SOME", "STEM_NONE".
set_stopper <stopper>
Set the Search::Xapian::Stopper object to be used for identifying stopwords.
set_default_op <operator>
Set the default operator.
This operator is used to combine non-filter query items when no explicit operator is used.
The most useful values for this are OP_OR (the default) and OP_AND. OP_NEAR and OP_PHRASE can also
be useful.
See Search::Xapian for descriptions of these constants.
get_default_op
Returns the current default operator.
set_database <database>
Pass a Search::Xapian::Database object which is used to check whether terms exist in some situations.
parse_query <query_string> [<flags>]
Parses the query string according to the rules defined in the query parser documentation below. You
can specify certain flags to modify the searching behaviour:
FLAG_BOOLEAN, FLAG_PHRASE, FLAG_LOVEHATE, FLAG_BOOLEAN_ANY_CASE,
FLAG_WILDCARD, FLAG_PURE_NOT, FLAG_PARTIAL, FLAG_SPELLING_CORRECTION,
FLAG_SYNONYM, FLAG_AUTO_SYNONYMS, FLAG_AUTO_MULTIWORD_SYNONYMS
To specify multiple flags, "bitwise or" them together (with "|"). The default flags are
"FLAG_PHRASE|FLAG_BOOLEAN|FLAG_LOVEHATE"
add_prefix <field> <prefix>
Add a probabilistic term prefix. E.g. $qp->add_prefix("author", "A");
Allows the user to search for author:orwell which will search for the term "Aorwel" (assuming English
stemming is in use). Multiple fields can be mapped to the same prefix (so you can e.g. make title:
and subject: aliases for each other).
Parameters: field The user visible field name prefix The term prefix to map this to
add_boolean_prefix <field> prefix
Add a boolean term prefix allowing the user to restrict a search with a boolean filter specified in
the free text query. E.g.
$p->add_boolean_prefix("site", "H");
Allows the user to restrict a search with site:xapian.org which will be converted to Hxapian.org
combined with any probabilistic query with "OP_FILTER".
Multiple fields can be mapped to the same prefix (so you can e.g. make site: and domain: aliases for
each other).
Parameters: field The user visible field name prefix The term prefix to map this to
stoplist_begin
stoplist_end
unstem_begin
unstem_end
get_description
Returns a string describing this object.
get_corrected_query_string
Get the spelling-corrected query string.
This will only be set if FLAG_SPELLING_CORRECTION is specified when QueryParser::parse_query() was
last called.
If there were no corrections, an empty string is returned.
set_max_wildcard_expansion <limit>
Specify the maximum expansion of a wildcard term.
Note: you must also set FLAG_WILDCARD for wildcard expansion to happen.
Parameter limit is the maximum number of terms each wildcard in the query can expand to, or 0 for no
limit (which is the default).