public class WarcFilter extends Object implements java.util.function.Predicate<WarcRecord>
Simplified grammar for the expression language:
expression = "(" expression ")" ; grouping
| "!(" expression ")" ; boolean NOT
| expression "&&" expression ; boolean AND
| expression "||" expression ; boolean OR
| field "==" string ; string equality
| field "!=" string ; string inequality
| field "=~" string ; regex match
| field "!~" string ; regex non-match
| field "==" number ; integer equality
| field "!=" number ; integer inequality
| field "<" number ; integer less-than
| field "<=" number ; integer less-than-or-equal
| field ">" number ; integer greater-than
| field ">=" number ; integer greater-than-or-equal
field = ":status" ; HTTP response code psuedo-field
| "http:" field-name ; HTTP header field
| field-name ; WARC header field
string = '"' [^"]* '"'
Whitespace outside a string or field is ignored. Fields that do not exist are treated as an empty string when subject
to string comparison. Fields that do not contain a valid number are treated as zero when subject to integer
comparison.| Modifier and Type | Method and Description |
|---|---|
static WarcFilter |
compile(String expression)
Compiles a filter expression from a string.
|
boolean |
test(WarcRecord warcRecord) |
String |
toString() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitand, isEqual, negate, orpublic static WarcFilter compile(String expression)
WarcFilterException - when the expression contains a syntax errorpublic boolean test(WarcRecord warcRecord)
test in interface java.util.function.Predicate<WarcRecord>Copyright © 2023. All rights reserved.