使用notepad ++仅搜索和替换每个文件的第一个结果

时间:2013-06-21 11:26:24

标签: notepad++

有没有办法找到一个在每个文件中重复多次但只替换每个文件的第一个结果的字符串?

由于

2 个答案:

答案 0 :(得分:2)

Notepad ++的查找对话框包含在文件中查找标签,其中包含替换文件按钮。要在所有文件中将abc替换为def,您可以尝试使用\A(.*?)abc(.*)\z的以下正则表达式搜索字符串\1ghi\2。您需要同时选择正则表达式 Dot匹配换行符

\A仅在文件的最开头匹配。 (.*?)abc是非贪婪的匹配并捕获所有内容,但不包括第一个abc(.*)匹配并捕获与\z匹配的文件末尾的所有其他内容。 (我在没有(.*)\z部分的情况下进行了实验,并且所有出现的abc都发生了变化。)

如果要进行的替换也需要正则表达式,那么您可能需要更改替换文本的\2部分。

不知道这对大文件有何影响。无论您使用何种文件大小,我建议您在使用替换文件工具之前进行备份。

使用两个非常小的文件在Notepad ++ 6.3.2中进行了测试。

答案 1 :(得分:0)

如果要在多个打开的文件上执行替换,只需在“查找”对话框中单击即可执行此操作;您必须手动选择每个文件并一次更换一个。

您可以录制一个宏来执行此操作,但是我不确定您是否必须为每个文件运行一次,或者如果您可以让宏为所有打开的文件重复一次。