正则表达式在一场比赛中替换两种模式

时间:2015-07-09 19:46:33

标签: regex notepad++

我正在尝试在notepad ++中进行查找/替换,其中字符串类似于

<span class="CharOverride-1">Q</span>

使用单个替换命令,我希望结果为

<span class="somethingNew">somethingElse</span>

这匹配了我想要替换的两件事,但我不知道如何形成替换

(?<=<span class="(CharOverride-1)">)(Q)(?=<\/span>)

如果可能,我想避免做这样的事情

(<span class=")(CharOverride-1)(">)(Q)(<\/span>)  

and

\1somethingNew\3somethingElse\5

2 个答案:

答案 0 :(得分:0)

您可以使用3个捕获组:

搜索:

(<span class=").*?(">).*?(</span>)

替换:

\1somethingNew\2somethingElse\3

别忘了检查&#34;正则表达式&#34;复选框。

但是,如果我能给你一个非常个人的建议:不要使用Notepad ++ ...

答案 1 :(得分:0)

正则表达式(?<=<span class=")CharOverride-1">Q(?=<\/span>)使用lookahead和lookbehind来查找字符串CharOverride-1">Q,但只能在字符串<span class="后跟其后跟</span>。使用somethingNew">somethingElse作为替换字符串。