Nodepad++ 通过正则表达式批量替换文本内容

来源:互联网 发布:miyavi知乎 编辑:程序博客网 时间:2024/04/30 03:59


昨天把设计好的数据库PDM通过剪切的方式往SVN目录里数据库PDM覆盖,UPDATE后发现有冲突。不像JAVA代码那样我可以手动修改再提交。我看了下PDM的冲突情况有700多个,逐个修改会要人命。最后我通过nodepad++解决了。实际上EditPlus也是可以的,只要支持正则表达式搜索。

使用Nodepad++打开冲突的PDM,如下:

<a:CreationDate>1457945227</a:CreationDate><<<<<<< .mine<a:ModificationDate>1458635454</a:ModificationDate>||||||| .r122131<a:ModificationDate>1457950145</a:ModificationDate>=======<a:ModificationDate>1458543219</a:ModificationDate>>>>>>>> .r122533<a:IconMode>-1</a:IconMode><<<<<<< .mine<a:Rect>((-5537,-4146), (4015,577))</a:Rect>||||||| .r122131<a:Rect>((-11344,10343), (-428,16715))</a:Rect>=======<a:Rect>((-10136,10223), (780,16595))</a:Rect>>>>>>>> .r122533<a:LineColor>12615680</a:LineColor><a:FillColor>16570034</a:FillColor><a:ShadowColor>12632256</a:ShadowColor>

通过以上可以看到很多冲突。快捷键:CTRL+H,弹出框中勾选“正则表达式”,然后输入“<<<<<<< .mine\r\n(.*?)=======\r\n.*?>>>>>>> .r\d{4}”,这时候所有冲突被选上。但这里我要把所有的我的(<<<<<<.mine)留下,其它删除。

1、输入“.r122131\r\n(.*?)=======\r\n.*?>>>>>>> .r\d{4}”,替换成空。

2、然后再把“<<<<<<< .mine“和“||||||| .”分别替换为空即可。

3、再SVN提交一下就行了。

最后我想说,

1、如果做覆盖操作前,最好使用复制的方式进行,特别是比较重要的文件,确定OK了再删除,不要像我一样喜欢剪切。以免造成不必要的麻烦。

2、PDM类似这样的建模工具,最好由一、两个人进行SVN管理。

3、PD是个非常强大的建模工具,不分语言。


0 0