0
こんにちはを起動し、次のコードフレックス/バイソン - 条件
%s expectWord
%%
<expectWord>"and"+{word} { BEGIN(INITIAL);}
<expectWord>["and"]* { /* Skip */;}
"and" { BEGIN(expectWordAfterAND); return AND; }
コードは、ユーザが入力したかどうかを確認することになっている「と」と、彼らは、ユーザーがその後、複数の論理積を入力しなかった場合ならば、彼らは無視されますがありますそして最後に言葉が返される時に。 したがって、ユーザが:and and and andとand bと入力した場合、lexerはaとbを返す必要があります。 1つしか返されません。
今すぐ戻っています:a b。 このコードを修正するにはどうすればよいですか?
おかげ