您的位置:首页 > Web前端 > HTML

清除HtmlAgilityPack得到的InnerText中残留的script

2015-08-27 10:50 741 查看
清除脚本可以这样:

foreach(var script in doc.DocumentNode.Descendants("script").ToArray())
script.Remove();


清除样式可以这样:

foreach(var style in doc.DocumentNode.Descendants("style").ToArray())
style.Remove();


清除多行注释,类似下面的:

<!--[if IE]>
<script language="JavaScript"> var objmain = document.getElementById("main"); function updatesize(){ var bodyw = window.document.body.offsetWidth; var w=(bodyw<=790?"790px":"100%"); objmain.style.width=w; } updatesize(); window.onresize = updatesize; </script>
<![endif]-->


可以像下面那样清除:

foreach (var comment in doc.DocumentNode.SelectNodes("//comment()").ToArray())
comment.Remove();


解释:HtmlAgilityPack是使用XPath语法,"//comment()"在XPath中表示“所有注释节点”,关于XPath的详细用法请参考XPath的资料。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: