Without this, it is not possible to use '?' wildcards without quoting the
value.
[Oo][Rr] { return OR; }
[Nn][Oo][Tt] { return NOT; }
[<>=()] { return *yytext; }
-[A-Za-z0-9:.*_-]+ { yylval->str = t_strdup(yytext); return TOKEN; }
+[A-Za-z0-9:.*?_-]+ { yylval->str = t_strdup(yytext); return TOKEN; }
[ \t\n\r] { /* ignore */ }
. {
char msg[160];
"foo",
"foo.c",
"foo.c:123",
+
+ /* wildcards */
+ "*foo",
+ "f*o",
+ "foo*",
+ "*",
+ "?foo",
+ "f?o",
+ "foo?",
+ "?",
};
/* values that need to be quoted */
"\xc3\xa4\xc3\xa1\xc4\x8d\xc4\x8f\xc4\x9b\xc5\x88\xc3\xb6\xc5\x99\xc3\xbc\xc3\xba\xc5\xaf",
/* utf-8: ascii + combining char */
"r\xcc\x8c",
+
+ /* wildcards */
+ "foo * bar",
+ "foo ? bar",
};
/* boolean operators used as values get lowercased unless they are quoted */