В flex / lex я хочу сопоставить несколько строковых токенов в один строковый токен. Как мне написать правило flex / lex?
Теперь мое правило соответствия строк:
union {
char *literal;
int token;
};
\"(\\.|[^\\"])*\" {
yylval.literal = strndup(yytext + 1, yyleng - 2);
return T_STRING_CONSTANT;
}
Это правило соответствует приведенному ниже источнику в 3 токена:
// source code
"hello world," " goodbye world," " my love"
Как я могу объединить их в один токен?
"hello world, goodbye world, my love"