首页 ┆ 网站地图 ┆ 在线留言 ┆ 游戏资讯 ┆ 资源下载 ┆ 端午节祝福 ┆ 迅雷在线影视 ┆淘宝手机在线充值 ┆淘宝游戏点卡充值 
设为首页
加入收藏
联系我们
高级搜索
您当前的位置: 主页>NET专区>ASP.NET>asp.net去掉HTML标记代码
asp.net去掉HTML标记代码
来源: 发布时间:2008-02-01 发布人: 浏览: 人次   字体: [ ]  
///   <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|#160);",     
                      
@"&(iexcl|#161);",   
                      
@"&(cent|#162);",   
                      
@"&(pound|#163);",   
                      
@"&(copy|#169);",   
                      
@"&#(\d+);",   
                      
@"-->",   
                      
@"<!--.*\n"   
                    }
;   
    
          
string   []   aryRep   =   {   
                        
"",   
                        
"",   
                        
"",   
                        
"\"",   
                        "&",   
                        
"<",   
                        
">",   
                        
"   ",   
                        
"\xa1",//chr(161),   
                        "\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;   
      }
   
  }


写一个静态方法   
  
#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>   
                  
///   取出文本中的图片地址   
                  
///   </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


相 关 文 章   发布商链接
·DataGrid中DropDownList触发Selected...
·DataFormatString格式化字符串的总结...
·ASP.NET图片验证程序代码
·textbox输入时从右边写起,而不是从左...
·asp.net中DataBinder.Eval的用法总结
·如何利用.Net中操作IIS?
·Net程序如何防止被注入(整站通用)
·带Checkbox的TreeView代码实例
·.net实现在IE耗时操作中加入进度条或...
·在asp.net中保持Session的有效期
 §最新评论:(评论内容只代表网友观点,与本站立场无关!)
网名: 验证码:  【所有评论】【↑返回顶部
评 分: 12 345
评论内容:(不能超过500字,请自觉遵守互联网相关政策法规。[按 Ctrl+Enter 可直接提交]
注意:请勿在本站发布政治话题、色情及违反法律的内容。
IT知道网 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。
推 荐 文 章
·实例讲解ASP.NET实现加密Cook...
·如何实现在DataList控件中的D...
·实例讲解asp.net生成高质量缩
·asp.net适用于IE或FireFox的...
·举例详解C#代码与javaScript...
·asp.net无刷新上传文件
·在Ie中保存图片时出现"800700...
·asp.net文件上传大小限制的控
·asp.net动态生成txt文本文件...
·asp.net实现将Excel文件导入...
·实现多列,带图片的DropDownLi...
·javascript实现TreeView 控件
·ASP.NET配置Word的操作权限
·让FileUpload控件在IE和FireF...
·ASP.NET实现Office文档的分类
热 门 文 章
·asp.net(C#)上传下载及文件管...
·图解asp.net如何用excel做报...
·asp.net无刷新上传文件
·Asp.Net防止刷新重复提交数据...
·asp.net实现将Excel文件导入...
·ASP.NET取得物理路径和虚拟路...
·asp.net中Web.Config配置文件...
·asp.net(c#)生成验证码代码,...
·asp.net页面回传与js调用服务...
·asp.net中DataBinder.Eval的...
·asp.net(C#版)实现登录验证码...
·DataGrid中DropDownList触发S...
·asp.net可输入的下拉框复合控...
·ASP.net 实现批量数据更新或...
·asp.net中常见的几种日历控件...
网站首页 - 关于本站 - 加入收藏 - 网站地图 - 友情连接 - 在线留言 - 联系我们 - 返回顶部
Copyright © 2007 IT知道网.[冀ICP备07026896号]. All Rights Reserved .