The library helps to parse search queries (e.g. custom search boxes) and enables custom search index implementations.
Supported expressions:
- (Implicit) boolean AND:
a AND bora b - boolean OR:
a OR b OR c - boolean NOT:
-aorNOT a - group query:
(a b) OR (c d) - text match:
abcor"words in close proximity" - range query:
[1 TO 20](inclusive),]aaa TO dzz[(exclusive), or[1 TO 20[(mixed) - scopes:
field:(a b)orfield:abc - field comparison:
year < 2000
A simple usage example:
import 'package:query/query.dart';
main() {
final q = parseQuery('some text OR field:another');
// prints "(some (text OR field:another))"
print(q);
}