正则表达式搜索并替换为条件:在记事本++中有效,在Powergrep中不起作用?



我在记事本 中使用此正则表达式,搜索和替换多个单词。

(good)|(great)|(fine)
(?1bad)(?2worse)(?3not)

问题是,它在PowerGrep中不起作用,有什么方法可以更改它?问题是,Notepad 的LENGH或正则表达有限,并且PowerGrep没有,并且也支持正则表达式列表。

在PowerGrep手册中,从未提及用条件替换。我建议您解决一种通用方法,可以解决 n search&替换仅3个步骤总体(显然,如果您只有3个单词可以替换,则可以先一个一个一个替换):

第一步(添加标记)

(F_1)|(F_2)|(F_3)|...|(F_n)
{1[R_1]}{2[R_2]}{3[R_3]}...{n[R_n]}

其中 (F_1, ..., F_n)分别用 (R_1, ..., R_n)替换的单词(或正则表达式)。

在您的示例中:

(good)|(great)|(fine)
{1[bad]}{2[worse]}{3[not]}

第二步(保持良好)

{[^[]{}]+[([^[]{}]*)]}
1

第三步(删除邪恶)

{[[^[]{}]*]}
null

如果您正在使用已经包括使用卷曲和方形的单词,并且您不想犯错误,则可以使用其他标记(Angular括号,三重顶点等)。/p>

最新更新