"{" は 1 行に 1 つである必要があります。したがって、それを認識するトークンを使用する必要があります。これは正しい例です:
program
{
また
program
{
そして、これは間違った例です:
program {
また
program
{ sentence;
次に、次のようなトークンがあります。
TOKEN: { < openKey: "{" > {System.out.print(image +"\n");}}
SKIP: { < ( " " | "\r" | "\t" | "\n" )+ > }
しかし、記号「{」を1つ以上の「\n」の間に正確に入れる方法が思いつきません。そして、それを認識した後、正確に書く必要があります:
program
{
私が試してみると:
TOKEN: { < openKey: ( " " | "\r" | "\t" | "\n" )+ "{" ( " " | "\r" | "\t" | "\n" )+ > {System.out.print(image +"\n");}}
これは実行されますが、入力にあったように非常に多くの「\n」が書き込まれます。