%{ #include "y.tab.h" %} symposium [sS][yY][mM][pP][oO][sS][iI][uU][mM] string [a-zA-Z]+ inteiro [0-9]+ real [0-9]+"."[0-9]* separadores [\{\}()\[\].,:;-] %option noyywrap yylineno %% {symposium} { return SYMPOSIUM; } {string} { yylval.str = strdup(yytext); return STRING; } {inteiro} { yylval.inteiro = atoi(yytext); return INTEIRO; } {real} { yylval.real = atof(yytext); return REAL; } {separadores} { return yytext[0]; } [ \n\t] {} . {} %%