正则表达式:搜索和替换缺少的标签

时间:2017-04-16 11:24:55

标签: regex windows notepad++

我有很多这种类型的标签:

<a href="foo">

<br >

我想要替换,所以输出将是:

<a href="foo" />

<br />

我试试这个正则表达式,但&#34;替换为&#34;部分不是很好。

搜索:<([^\s]+)(\s[^>]*?)?(?<!/)>

替换为:\1\2 \>

任何人都可以帮助我吗?实际上,我想在标记的末尾更改>/>遗漏的位置。

1 个答案:

答案 0 :(得分:1)

由于notepad++ supported正面后瞻断言和前瞻断言,您可以计算">a-space和{{1}之间的零长度使用这种模式:

>

此patten与任何内容都不匹配,实际上它匹配的位置不是文字字符串,您可以使用字符串(?<=( |"))(?=>)进行替换

see demo