C#实现过滤HTML代码的函数

ZDNet软件频道 时间:2008-07-18 作者: |  我要评论()
本文关键词:过滤 HTML 实用教程 C# Windows
用C#写了一段正则表达式,作用是删除Page里面Code中的HTML标签,这在做采集信息,消除其中的HTML时,很有用处。

C#写了一段正则表达式,作用是删除Page里面Code中的HTML标签,这在做采集信息,消除其中的HTML时,很有用处。

public string checkStr(string HTML) 
  {
    System.Text.RegularExpressions.Regex regex1 =
      new System.Text.RegularExpressions.Regex(@"<script[sS]+</script *>", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    System.Text.RegularExpressions.Regex regex2 =
      new System.Text.RegularExpressions.Regex(@" href *= *[sS]*script *:", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    System.Text.RegularExpressions.Regex regex3 =
      new System.Text.RegularExpressions.Regex(@" no[sS]*=", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    System.Text.RegularExpressions.Regex regex4 =
      new System.Text.RegularExpressions.Regex(@"<iframe[sS]+</iframe *>", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    System.Text.RegularExpressions.Regex regex5 =
      new System.Text.RegularExpressions.Regex(@"<frameset[sS]+</frameset *>", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    System.Text.RegularExpressions.Regex regex6 =
      new System.Text.RegularExpressions.Regex(@"<img[^>]+>", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase);  
    System.Text.RegularExpressions.Regex regex7 =
      new System.Text.RegularExpressions.Regex(@"</p>", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    System.Text.RegularExpressions.Regex regex8 =
      new System.Text.RegularExpressions.Regex(@"<p>", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    System.Text.RegularExpressions.Regex regex9 =
      new System.Text.RegularExpressions.Regex(@"<[^>]*>", 
      System.Text.RegularExpressions.RegexOptions.IgnoreCase); 
    HTML = regex1.Replace(HTML, ""); //过滤<script></script>标记
    HTML = regex2.Replace(HTML, ""); //过滤href=javascript: (<A>) 属性
    HTML = regex3.Replace(HTML, " _disibledevent="); //过滤其它控件的on...事件
    HTML = regex4.Replace(HTML, ""); //过滤iframe
    HTML = regex5.Replace(HTML, ""); //过滤frameset
    HTML = regex6.Replace(HTML, ""); //过滤frameset
    HTML = regex7.Replace(HTML, ""); //过滤frameset
    HTML = regex8.Replace(HTML, ""); //过滤frameset
    HTML = regex9.Replace(HTML, "");
    HTML = HTML.Replace(" ", "");
    HTML = HTML.Replace("</strong>", "");
    HTML = HTML.Replace("<strong>", "");
    return HTML;
}

过滤

HTML

实用教程

C#

Windows


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134