使用 ubuntu 与 lex(flex) 中的注释匹配

matching with comment in lex(flex) using ubuntu

我有一个关于与评论和正则表达式匹配的问题

我使用了“//”。*$(使用“”是因为语法错误)

动作只是打印 yytext - printf(%s is comment",yytext)

但是……

输出太奇怪了,我猜不出问题所在。

输入文件是

i want to extract comment. ;// or " "//

输出为

the problem was cut off yytext for comment..

例如

// 显示 "Hello World!" 字符串

刚刚被提取 "Hello World!" String

where is gone // 显示..

有什么问题?

您在打印的内容中包含换行符。根据您打印的内容,它可能会做一些奇怪的事情。尝试 printf("%.*s\n", yyleng-1, yytext);