使用正则替换文件头注释
下了一个开源软件源代码,需要替换掉原有的文件头注释,格式如下
打算使用note++来进行替换,这里由于涉及到多行所以只能选择正则来进行匹配。
刚开始想了几个方案:
1、直接首行和尾行进行匹配,
正则表达式:^/*.*(\s*/)$
这里多匹配了部分的代码和注释不符合要求,这里就看能否只查找第一次匹配的字符串
试了^/*.*(\s*/)?$,还是不行。所以考虑下面方案
2、直接首行和尾行进行匹配,并且按照不包含import字符,
正则表达式:^/*\s.* 文本中包含的字符.∗(?!import)(\s\*/) 文 本 中 包 含 的 字 符 . ∗ ( ? ! i m p o r t ) ( \s \* / )
试了结果,还是和上面的一样没达到要求
3、首行、尾行再加上字数进行匹配,
正则表达式:^/*\s.this software without specific prior written permission.{0,10}(\s*/){1}$