如何使用regex在notepad ++中复制多行

时间:2014-08-31 20:32:47

标签: regex search copy

我有一个类似这种模式的列表。

ABC
q
w ^
Ë
XYZ
ABC
一个
小号
d
ABC
ž
X
c

现在,我想要做的是,我想复制xyz覆盖asd而不是zxc的部分。我有一个正则表达式

xyz(.*?)(abc)(.*?)(abc)

这标志着线路很好(它也需要一个abc,但我可以稍后解决),但那又怎么样?我试着给它添加书签,它只是书签xyz,我不能将所有找到的行添加为书签。试图抓住我不想删除它的部分是没用的,因为它的设置方式,XYZ线也会被捕获。当我在搜索中尝试书签时,文本用粉红色标记,但似乎没有办法对此做任何事情,除了欣赏记事本++如何尽职尽责地找到我想要的东西。感觉应该有一个简单的解决方案,在这种情况下我会感觉像是一个混蛋,但是在花了一个晚上试图谷歌它并且只找到模糊相关的答案但不适用于我的情况,我把它扔进这个能力海,希望有人可以帮助我。

3 个答案:

答案 0 :(得分:1)

使用Notepad ++进行一些测试后。至少在版本中我有v6.6.8我很确定你要做的事情是不可能的,因为正如你所说,它只会标记比赛的第一行。

但是,如果您要做的是获取所有匹配行的列表,您可以使用其他工具来完成它。

Findstr可以在Windows中完成这项工作,但我不认为它有能力制作。匹配新行,因此它不适合你的正则表达式。

你可以像这里一样使用Perl:Print all matches of a regular expression from the command line?

您可以按照此处的建议使用grepWin或GNU grep:What are good grep tools for Windows?

答案 1 :(得分:0)

“查找”对话框中的“在当前文档中查找全部”按钮是否适用于此?

答案 2 :(得分:0)

如果您使用的是Notepad ++ v6或更高版本,那么您将获得

. matches newline
正则表达式选项旁边的

复选框,这应该可以做你想要的。

enter image description here