library query-text-parser
The Query Text Parser library performs search query text parsing
engage/query-text-parser
The Query Text Parser library performs search query text parsing
- Tuesday, February 25, 2014
- by MiniCodeMonkey
- Repository
- 6 Watchers
- 8 Stars
- 3,709 Installations
- PHP
- 0 Dependents
- 0 Suggesters
- 2 Forks
- 0 Open issues
- 1 Versions
- 5 % Grown
, (*1)
Query Text Parser
The Query Text Parser library performs search query text parsing., (*2)
This allows you to write a search query in free form text and parse it into a machine-readable parsing tree., (*3)
The library is fully unit-tested., (*4)
Features
- AND/OR operators
- Grouped queries using paranthesis -- i.e.
(Denver AND Boston) OR Miami
- Multi-word search queries using quotes -- i.e.
"San Francisco" AND Chicago
Example usage
$parser = new Engage\QueryTextParser\Parser;
$result = $parser->parse('(Chicago AND Houston) OR Phoenix');
print_r($result);
Output
Engage\QueryTextParser\Data\Group Object
(
[type] => OR
[children] => Array
(
[0] => Engage\QueryTextParser\Data\Group Object
(
[type] => AND
[children] => Array
(
[0] => Engage\QueryTextParser\Data\Partial Object
(
[text] => Chicago
[negate] =>
)
[1] => Engage\QueryTextParser\Data\Partial Object
(
[text] => Houston
[negate] =>
)
)
)
[1] => Engage\QueryTextParser\Data\Partial Object
(
[text] => Phoenix
[negate] =>
)
)
)
TODO
- Support negating operator (i.e. NOT)
dev-master
9999999-dev
The Query Text Parser library performs search query text parsing
Sources
Download
The Requires
The Development Requires
by
Mathias Hansen