正则表达式找到立即重复的标签

时间:2013-05-06 05:56:10

标签: regex notepad++

我正在使用Notepad ++,其中我必须找到并删除下面显示的立即重复的HTML标记

实际

<a href="www.google.com"><a href="www.google.com">www.google.com</a></a>

必需

<a href="www.google.com">www.google.com</a>

我有一个正则表达式来查找新行中的重复项,但我的搜索将在一行中。

Pl帮帮我

4 个答案:

答案 0 :(得分:2)

<强>查找

(<(\w+)(\s[^>]*)?>)\1(.*)(<\/\2>)\5

<强>替换

\1\4\5

在Sublime中测试过。

答案 1 :(得分:1)

对于这种“双链接”,你可以使用它:

find: <(a [^>]+)>(<\1>.*?</a>)</a>
replace: \2

对于所有标签,请使用:

find: <((\w+)[^>]*)>(<\1>.*?</\2>)</\2>
replace: \3

(两个带有最新版本的记事本++)

答案 2 :(得分:1)

搜索模式:

.*">(<.*>)<\/a>

替换:

\1

答案 3 :(得分:0)

尝试这种模式

(<(\w+)(\s[^>]*)?>)(\s|\n|\t)*\1(.*)(<\/\2>)(\s|\n|\t)*\6

演示:http://rubular.com/r/RT7ObfV0i8

替换\ 1和\ 6