任何人都可以帮助我,如果它有'//'或单行或多行评论等评论,如何删除行'/*...*/'
例如:
/\*#define 0x00000000*/
//#define 0x00180000
// #define 0x20000000
// abcd
/*#define 0x00080000
#define 0x40000000*/
#define 0x00014000
#define 0x00000800
/* defg */
#define 0x00080000
#define 0x40000000
输出应为
#define 0x00014000
#define 0x00000800
#define 0x00080000
#define 0x40000000
在C#中使用Regex或任何其他方法,提前谢谢
答案 0 :(得分:0)
如果您的文件格式正确,只需执行读取行,并使用string.containt(...)
检查字符串是否包含“/, *,
”。
如果是这种情况,请将其删除。
提示:将列表中的好行显示为显示您的输出。
希望这可以帮到你。
如果不抱歉。
答案 1 :(得分:0)
好吧,这个正则表达式(^\/\/.*?$)|(\/\*.*?\*\/)
(Rubular proof)将匹配(并且可能会删除,如果您使用Visual Studio并将其替换为空)以下示例文本中的以下行:
//#define 0x00180000
// #define 0x20000000
// abcd
/*#define 0x00080000
#define 0x40000000*/
/* defg */
几乎可以得到你想要的东西。现在,我怀疑这一行/\*#define 0x00000000*/
,但如果你想捕获它,你可以将正则表达式修改为(^\/\/.*?$)|(\/.*?\*.*?\*\/)
(Rubular proof)。