RegEx从HTML删除跨度标签

时间:2018-10-04 12:26:50

标签: html regex

我需要一些RegEx来删除特定类(包括结束标签)的跨度标签,但不想删除两者之间的内容... 我不想删除任何其他跨度标签

我无法提出它,因为我倾向于忘记RegEx技巧:(

我有这个

<span class="SpellE">system_user.user_name</span>
<span>This is some text</span>
<Span class="OtherCLass">Some other text</span>
<span class="SpellE">system_user.userid</span>

我想要这个结果

system_user.user_name
<span>This is some text</span>
<Span class="OtherCLass">Some other text</span>
system_user.userid

是的,我需要整理一些凌乱的MS Html:)

预先感谢

1 个答案:

答案 0 :(得分:0)

以下正则表达式应符合您的要求:

<span class=\"SpellE\">(.*)</span>

它将span与class ='SpellE'匹配,从而创建了一组span文本。

然后,您应将比赛替换为第1组。

在JavaScript中,您可以像这样使用它:

var testStr = '<span class="SpellE">system_user.user_name</span>\n'
    + '<span>This is some text</span>\n'
    + '<Span class="OtherCLass">Some other text</span>\n'
    + '<span class="SpellE">system_user.userid</span>\n';

var regex = /<span class=\"SpellE\">(.*)</span>/gi;

var result = testStr.replace(regex, '\1');

现在结果应该是您想要的输出。