%{ #include int level=0; %} DEBUT_COM "(*" FIN_COM "*)" %x commentaire %% \".*\" ECHO; {DEBUT_COM} {if (level==0) BEGIN(commentaire); level++;} . ; \n ; /*rajoute car flex ne respecte pas la definition des ERE*/ {DEBUT_COM} {level++;} {FIN_COM}\n? {level--; if (level==0) BEGIN(0);} %% int main() { yylex(); }