程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> asp.net如何去掉HTML標記

asp.net如何去掉HTML標記

編輯:.NET實例教程
/**////   <summary>   
  ///   去除Html標記   
  ///   </summary>   
  ///   <param   name="NoHTML">包括Html的源碼   </param>   
  ///   <returns>已經去除後的文字</returns>   
  public   static   string   NoHTML(string   Htmlstring)   
  {   
  //刪除腳本   
  Htmlstring   =   Regex.Replace(Htmlstring,@"<script[^>]*?>.*?</script>","",RegexOptions.IgnoreCase);   
  //刪除Html   
  Htmlstring   =   Regex.Replace(Htmlstring,@"<(.[^>]*)>","",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"([\r\n])[\s]+","",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"-->","",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"<!--.*","",RegexOptions.IgnoreCase);   
    
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(quot|#34);","\"",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(amp|#38);","&",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(lt|#60);","<",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(gt|#62);",">",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(nbsp|#160);","   ",RegexOptions.IgnoreCase);   
Htmlstring   =   Regex.Replace(Htmlstring,@"&(IExcl|#161);","\xa1",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(cent|#162);","\xa2",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(pound|#163);","\xa3",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,@"&(copy|#169);","\xa9",RegexOptions.IgnoreCase);   
  Htmlstring   =   Regex.Replace(Htmlstring,   @"&#(\d+);","",RegexOptions.IgnoreCase);   
    
  Htmlstring.Replace("<","");   
  Htmlstring.Replace(">","");   
  Htmlstring.Replace("\r\n","");   
  Htmlstring=HttpContext.Current.Server.HtmlEncode(Htmlstring).Trim();   
    
  return   Htmlstring;   
  }



/**////提取Html代碼中文字的C#函數     
  ///   <summary>   
  ///   去除Html標記   
  ///   </summary>   
  ///   <param   name="strHtml">包括Html的源碼   </param>   
  ///   <returns>已經去除後的文字</returns>   
  using   System;   
  using   System.Text.RegularExpressions;   
  public   class   StripHtmlTest{   
 public   static   void   Main(){   
          string   s=StripHTML("<HTML><HEAD><TITLE>中國石龍信息平台</TITLE></HEAD><BODY>faddfs龍信息平台</BODY></Html>");   
          Console.WriteLine(s);   
      }   
    
      public   static   string   StripHTML(string   strHtml){   
          string   []   aryReg   ={   
                      @"<script[^>]*?>.*?</script>",   
    
                      @"<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""''])(\\[""''tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>",   
                      @"([\r\n])[\s]+",   
                      @"&(quot|#34);",   
                      @"&(amp|#38);",   
                      @"&(lt|#60);",   
                      @"&(gt|#62);",     
                    &nbsp; @"&(nbsp|#160);",     
                      @"&(IExcl|#161);",   
                      @"&(cent|#162);",   
                      @"&(pound|#163);",   
                      @"&(copy|#169);",   
                      @"&#(\d+);",   
                      @"-->",   
                      @"<!--.*\n"   
                    };   
    
          string   []   aryRep   =   {   
                        "",   
                        "",   
                        "",   
                        "\"",   
                        "&",   
                        "<",   
                        ">",   
                        "   ",   
                        "\xa1",//chr(161),  &nbsp;
                        "\xa2",//chr(162),   
                        "\xa3",//chr(163),   
                        "\xa9",//chr(169),   
                        "",   
                        "\r\n",   
                        ""   
                      };   
    
          string   newReg   =aryReg[0];   
          string   strOutput=strHtml;   
          for(int   i   =   0;i<aryReg.Length;i++){   
              Regex   regex   =   new   Regex(aryReg[i],RegexOptions.IgnoreCase);   
              strOutput   =   regex.Replace(strOutput,aryRep[i]);   
          }   
          strOutput.Replace("<","");   
          strOutput.Replace(">","");   
          strOutput.Replace("\r\n","");   
          return   strOutput;   
      }   
  }


寫一個靜態方法   
移除HTML標簽#region   移除Html標簽   
  /**////   <summary>   
  ///   移除Html標簽   
  ///   </summary>   
  ///   <param   name="HTMLStr">HtmlStr</param>   
  public   static   string     ParseTags(string   HtmlStr)   
  {   
  return   System.Text.RegularExpressions.Regex.Replace(HtmlStr,   "<[^>]*>",   "");     
  }   
    
  #endregion   
    
                  取出文本中的圖片地址#region   取出文本中的圖片地址   
                  /**////   <summary>   
               &nbsp;  ///   取出文本中的圖片地址   
                  ///   </summary>   
                  ///   <param   name="HTMLStr">HtmlStr</param>   
                  public   static   string   GetImgUrl(string   HtmlStr)   
                  {   
                          string   str   =   string.Empty;   
                          string   sPattern   =   @"^<img\s+[^>]*>";   
                          Regex   r   =   new   Regex(@"<img\s+[^>]*\s*src\s*=\s*(['']?)(?<url>\S+)''?[^>]*>",   
                                  RegexOptions.Compiled);   
                          Match   m   =   r.Match(HtmlStr.ToLower());   
                          if   (m.Success)   
                                  str   =   m.Result("${url}");   
                          return   str;   
                  }   
    
                  #endregion
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved