RegEx从HTML中删除Span标签

w80xi6nr  于 2023-08-08  发布在  其他
关注(0)|答案(2)|浏览(124)

我需要一些RegEx删除一个特定的类,包括结束标签的跨度标签,但不想删除什么之间…我不想删除任何其他span标记
我不能想出它,因为我倾向于忘记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:)
先谢了

4c8rllxm

4c8rllxm1#

下面的正则表达式应该与你想要的匹配:

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

字符串
它将span与class='SpellE'匹配,创建span文本的Group.
然后你应该用第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');


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

kzmpq1sx

kzmpq1sx2#

无意中发现了这封旧邮件... Poul发布的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');

字符串

相关问题