正则表达式如何去掉特定标签以及标签里面的内容
发布网友
发布时间:2022-04-06 11:51
我来回答
共2个回答
热心网友
时间:2022-04-06 13:20
解决办法就是加 \b 断言。
<(?!((/?\s?li\b)|(/?\s?ul)|(/?\s?a\b)|(/?\s?img\b)|(/?\s?br\b)|(/?\s?span\b)|(/?\s?b\b)))[^>]+>
private static string RemoveSpecifyHtml(string ctx) {
string[] holdTags = { "a", "img", "br", "strong", "b", "span", "li" };//保留的 tag
// <(?!((/?\s?li\b)|(/?\s?ul\b)|(/?\s?a\b)|(/?\s?img\b)|(/?\s?br\b)|(/?\s?span\b)|(/?\s?b\b)))[^>]+>
string regStr = string.Format(@"<(?!((/?\s?{0})))[^>]+>", string.Join(@"\b)|(/?\s?", holdTags));
Regex reg = new Regex(regStr, RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.IgnoreCase);
return reg.Replace(ctx, "");
}
热心网友
时间:2022-04-06 14:38
直接使用innerHTML之类的方法,不可以吗?还是这是一段字符来的?
var a = '<td class="b"> \
<span class="a">xxxxx</span> \
ooooo \
</td>';
//alert(a.replace(/<\/?td[^>]*>/gim,"").replace());
alert(a.match(/<\/span>(.*)<\/td>/im)[1]);
追问这样子还是不可以的,还是想用我那种办法解决...