私はいわゆる定義を使用します
message : '"'.* '"';
「」内のすべての小さなものを表すのはメッセージ、ターミナルです。「lkjaldjfa kajf」とうまく機能しますが、「\n」に出会うと悪夢に変わります-無限ループを引き起こし、私の記憶を食い尽くします.
理由がわかりません..ありがとう
私はいわゆる定義を使用します
message : '"'.* '"';
「」内のすべての小さなものを表すのはメッセージ、ターミナルです。「lkjaldjfa kajf」とうまく機能しますが、「\n」に出会うと悪夢に変わります-無限ループを引き起こし、私の記憶を食い尽くします.
理由がわかりません..ありがとう
... それは悪夢に変わります -- 無限ループを引き起こし、私の記憶を食い尽くします。
それを再現することができずにそれについてコメントするのは難しい.
ただし、パーサールールは次のとおりです。
message : '"' .* '"';
tokenで終わる0 個以上の他のトークンが続くtokenに 一致します。'"'
'"'
パーサー ルールとして保持する非常に正当な理由がない限り (それを聞きたいのですが)、レクサールールに変更します。
Message : '"' .* '"';
これは、文字 '"'
の後にゼロ個以上の他の文字が続き、その文字で終わる文字 に一致します'"'
。