初步说明: 请将此标记为重复,如果已存在,我不知道如何搜索它。
在记事本中有一些看起来像这样的行:
Line 1: a x a x a x a
...
Line m: a y a y a y a
...
Line n: a z a z a z a
" ..."表示具有任何内容的其他行。
我需要做的是搜索模式,在那里我可以维护不同的不同部分。
问题在于,我无法做到"更换所有''""""""""" #39;将被替代;在这种情况下,"替换' a'的第二个实例。每个相关行"
因此,我需要搜索所有
的行a 'variable data_1' a 'variable data_2' a 'variable data_3' a
并将其替换为
a 'variable data_1' **b** 'variable data_2' a 'variable data_3' a
最终结果应如下所示:
Line 1: a x b x a x a
...
Line m: a y b y a y a
...
Line n: a z b z a z a
我不知道的是: 我怎么能以某种方式定义"文本的这一部分将是可变的"模式?
如果在NPP中无法做到这一点,如果您知道可以执行此操作的软件,请告诉我们!
答案 0 :(得分:2)
您可以搜索:
((a)\s*'[^']*'\s*)\2((?:\s*'[^']*'\s*\2)+)
并替换为:
\1**b**\3
在搜索模式中,
\1
是我们想要更改的令牌之前的块\2
是我们想要改变的第二次重复的重复令牌\3
是我们想要更改的令牌之后的块并且重复令牌的第二次迭代被排除在组之外,因为我们用替换文本中的另一个值替换它。