我正在解析源代码文件,我想删除所有的行注释(即以“//”开头的注释)和多行注释(即/..../)。但是,如果多行注释中至少有一个换行符(\n),则输出应该只有一个换行符。
例如,以下代码:
什么是最好的方法呢? 谢谢。
编辑: 测试用例代码:
例如,以下代码:
qwe /* 123
456
789 */ asd
should turn exactly into:
qwe
asd
并且不是“qweasd”或:
qwe
asd
什么是最好的方法呢? 谢谢。
编辑: 测试用例代码:
comments_test = "hello // comment\n"+\
"line 2 /* a comment */\n"+\
"line 3 /* a comment*/ /*comment*/\n"+\
"line 4 /* a comment\n"+\
"continuation of a comment*/ line 5\n"+\
"/* comment */line 6\n"+\
"line 7 /*********\n"+\
"********************\n"+\
"**************/\n"+\
"line ?? /*********\n"+\
"********************\n"+\
"********************\n"+\
"********************\n"+\
"********************\n"+\
"**************/\n"+\
"line ??"
预期结果:
hello
line 2
line 3
line 4
line 5
line 6
line 7
line ??
line ??