解决git冲突时,我尝试使用regex从源文件中捕获冲突,内容如下:
<<<<<<< HEAD
line1
line2
...
=======
这是我的版本:
^<<<<<<< HEAD\n\t.+\n\t.+\n\t=======\n\t
显然,我的版本仅适用于固定线路,因为我需要重复.+\n\t
进行匹配。但是真的不知道如何正确执行此操作吗?有小费吗?
[更新]我正在使用Boost库中的Perl兼容正则表达式(PCRE)引擎。
您可以使用
(?sm)^<<<<<<< HEAD.*?\n\t*=======\n*\t*
说明:
(?sm)
-内联修饰符:s
使.
匹配和其他任何字符都换行,m
并使^
匹配以行开头和$
匹配行结尾^
-生产线的起点<<<<<<< HEAD
-文字字符串 <<<<<<< HEAD
.*?
-0+任何字符,最少到第一个\n\t*
-LF后跟0+制表符=======
-文字子串\n*\t*
-(不确定您确实需要它)0+个LF后跟0+个制表符。本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句