MAN page from Old RedHat 7.X perl-Text-Query-0.06-8.i386.rpm
Text::Query::ParseAdvanced
Section: User Contributed Perl Documentation (3)
Updated: perl v5.6.0
Index NAME
Text::Query::ParseAdvanced - Parse AltaVista advanced query syntax
SYNOPSIS
use Text::Query; my $q=new Text::Query('hello and world', -parse => 'Text::Query::ParseAdvanced', -solve => 'Text::Query::SolveAdvancedString', -build => 'Text::Query::BuildAdvancedString'); DESCRIPTION
This module provides an object that parses a string containing a Boolean query expression similar to an AltaVista ``advanced query''.
It's base class is Text::Query::Parse;
Query expressions consist of literal strings (or regexps) joined by the following operators, in order of precedence from lowest to highest:
- OR, |
- AND, &
- NEAR, ~
- NOT, !
Operator names are not case-sensitive. Note that if you want to use a `|' in a regexp, you need to backwhack it to keep it from being seen as a query operator. Sub-expressions may be quoted in single or double quotes to match ``and,'' ``or,'' or ``not'' literally and may be grouped in parentheses (`(, )') to alter the precedence of evaluation.
A parenthesized sub-expression may also be concatenated with other sub- expressions to match sequences: `(Perl or Python) interpreter' would match either ``Perl interpreter'' or ``Python interpreter''. Concatenation has a precedence higher than NOT but lower than AND. Juxtaposition of simple words has the highest precedence of all.
OPTIONS
These are the additional options of the
`prepare' method and the constructor.
- -near defaults to 10
- Sets the number of words that can occur between two expressions and still satisfy the NEAR operator.
- -operators defaults to and, or, not, near
- Sets the operator names. The argument of the option is a pointer to ahash table mapping the default names to desired names. For instance:
{ 'or' => 'ou', 'and' => 'et', 'near' => 'proche', 'not' => 'non', }
- -scope_map default to {}
- Map the scope names to other names. If a scope is specified as `scope:'search the map for an entry whose key is `scope' and replace `scope' withthe scalar found. For instance:
{ 'scope' => 'otherscope' }
SEE ALSO
Text::Query(3)
Text::Query::Parse(3)
AUTHORS
Eric Bohlman (ebohlmanAATTnetcom.com)
Loic Dachary (loicAATTsenga.org)
Index
- NAME
- SYNOPSIS
- DESCRIPTION
- OPTIONS
- SEE ALSO
- AUTHORS
This document was created byman2html,using the manual pages.