【发布时间】:2016-07-18 09:08:15
【问题描述】:
解决git冲突时,我尝试使用正则表达式从源文件中捕获冲突,内容是这样的:
<<<<<<< HEAD
line1
line2
...
=======
这是我的版本:
^<<<<<<< HEAD\n\t.+\n\t.+\n\t=======\n\t
显然,我的版本只适用于固定行,因为我需要重复.+\n\t 来匹配它们。但真的不知道如何正确地做到这一点?有什么建议吗?
[更新] 我正在使用 Boost 库中的 Perl 兼容正则表达式 (PCRE) 引擎。
【问题讨论】:
-
试试
(?ms)^<<<<<<< HEAD\n.*?\n\t*=======\n*\t* -
@WiktorStribiżew 似乎你错过了 HEAD 内容为空的情况:
-
抱歉,您只提供了一个没有规范的示例字符串。这就是我所能推断的。请使用相关的测试用例更新问题。我不知道空块是什么样子的。也许
(?ms)^<<<<<<< HEAD.*?=======(?:\n|$)就是你所需要的
标签: regex