Notepad ++用多个文本替换所有行中的多个文本和文本

时间:2014-12-11 09:40:19

标签: regex notepad++ textwrangler

我有一个很大的txt文件。见下面的例子;

||0011||
||0011||
||0011||
||0011||
||0011||
||0011||
||0011||
||0011||
||0011||
||0122||
||0122||
||0122||
||0122||
||0122||
||0122||
||0122||
||0122||
||0122||
||0122||
||0232||
||0232||
||0232||
||0232||
||0232||
||0232||
||0232||
||0232||
||0232||
||0232||
||0232||

我想要做的是,我想用001112替换0011,0122替换012232,0232替换023213.我的问题是,我想一次性替换它们。我知道用三个步骤替换它们,即,首先我可以用001112替换所有具有0011的行,类似第二次我可以用012234替换具有0122的行等。请记住,有更多的列和行文件。以上只是一个例子。

1 个答案:

答案 0 :(得分:1)

由于你不能用notepad ++进行条件替换,你可以这样使用:

1)在文件的末尾添加这三行:

#001112
#012234
#023213

2)使用此模式并替换:

pattern: \|\|\K(\d+)(?=\|\|[\s\S]+#\1(\d+))|(?:\r?\n#.*)+$
replace: $1$2 

demo