正则表达式如何去掉特定标签以及标签里面的内容 5
这是<td>里面的内容,我只想获得就是上面方框里面的内容,像上面的span标签及里面的内容都不需要,该怎么写呢,谢谢...
这是<td>里面的内容,我只想获得就是上面方框里面的内容,像上面的span标签及里面的内容都不需要,该怎么写呢,谢谢
展开
2个回答
展开全部
解决办法就是加 \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, "");
}
<(?!((/?\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, "");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接使用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]);
追问
这样子还是不可以的,还是想用我那种办法解决...
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询