我想知道是否可以将整个输入从起始条件保存到lex中的最终状态。
例如:
isValid({nick: nick_, mensaje: message_ })
如果我输入%x START
%%
"XXX" BEGIN START;
<START>.
<START>"YYY" {printf("%s", yytext);}
之类的内容,则会打印YYY
,但我希望打印XXX some chars YYY
。有没有办法在lex中做到这一点?
答案 0 :(得分:1)
从开始条件中的每个操作调用yymore()
,除了最后一个。 yymore()
意味着有更多的令牌要来;它会导致扫描仪不重置令牌
起点。