antlr4 の次のルールは、有効な入力に対しては機能しません。
testSimple
: 'name' 'eq' WORD+? .*? NEWLINE
WORD: ~[ \t\f\r\n]+ ;
入力は次のとおりです。
name eq John Tom Allen notAName
エラーは次のとおりです。
line 1:8 no viable alternative at input 'John'
貪欲でない演算子を使用すると、後で「最初の試合が勝つ」というルールのように、いくつかの制限があることを私は知っています。そして、ルールは特にあいまいです。しかし、少なくとも1つの方法で入力と一致するべきではありませんか?