C スタイルの単一行コメントを理解する小さな言語の文法を書きました。
// this is a comment
これは、antlr v3.0.1 を使用して、この言語用に私が書いた文法の断片です。
SINGLELINE_COMMENT
: '/' '/' (options {greedy=false;} : ~('\r' | '\n'))* ('\r' | '\n' )+ {$channel=HIDDEN;};
WS : (' '|'\r'|'\t'|'\u000C'|'\n')+ {$channel=HIDDEN;};
コメントがスクリプトの最後にあり、終了する NL/CR がない場合を除いて、これはほとんど機能します。antlr から (実行時に) 迷惑なメッセージが表示されます。
line 1:20 required (...)+ loop did not match anything at character '<EOF>'
このメッセージを消すにはどうすればよいですか? EOF
式にトークンを追加しようとしました(..)+
が、これは機能しません。