是否有可能在一个相似的状态中有多个表达式?我希望将几个表达式组合在一起,让自己的生活变得轻松。我想在下面做类似的事情,但它不起作用,只识别第一个expr,虽然它确实匹配expr,但它并没有使用yytext保存到数组中。我猜我做错了所以任何帮助都会受到赞赏。谢谢
<some_state>"Milk;" |
"Honey;" |
"Cinnamon;" |
"Cardamon;" |
"Rum;" |
"Brandy;" |
"Whiskey;" |
"Aquavit;" |
"Kahula;" { printf("Example"); array[i].addition = yytext;BEGIN(amount_state);}
答案 0 :(得分:0)
如果允许flex
,您可以使用如下所示的开始条件范围:
<some_state>{
"Milk;" |
"Honey;" |
... |
"Kahula;" { printf("Example"); ... }
}
如果仅允许AT&T lex
,遗憾的是这可能无效......