ASP.NET过滤所有HTML标签几种方法

asp教程.net过滤所有html标签几种方法

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, @"([rn])[s]+", "",
  10:            regexoptions.ignorecase);
  11:          htmlstring = regex.replace(htmlstring, @"-->", "", regexoptions.ignorecase);
  12:          htmlstring = regex.replace(htmlstring, @"<!--.*", "", regexoptions.ignorecase);
  13:          htmlstring = regex.replace(htmlstring, @"&(quot|#34);", """,
  1            regexoptions.ignorecase);
  1          htmlstring = regex.replace(htmlstring, @"&(amp|#38);", "&",
  16:            regexoptions.ignorecase);
  17:          htmlstring = regex.replace(htmlstring, @"&(lt|#60);", "<",
  18:            regexoptions.ignorecase);
  19:          htmlstring = regex.replace(htmlstring, @"&(gt|#62);", ">",
  20:            regexoptions.ignorecase);
  21:          htmlstring = regex.replace(htmlstring, @"&(nbsp|#160);", "   ",
  22:            regexoptions.ignorecase);
  23:          htmlstring = regex.replace(htmlstring, @"&(iexcl|#161);", "xa1",
  2            regexoptions.ignorecase);
  2          htmlstring = regex.replace(htmlstring, @"&(cent|#162);", "xa2",
  26:            regexoptions.ignorecase);
  27:          htmlstring = regex.replace(htmlstring, @"&(pound|#163);", "xa3",
  28:            regexoptions.ignorecase);
  29:          htmlstring = regex.replace(htmlstring, @"&(copy|#169);", "xa9",
  30:            regexoptions.ignorecase);
  31:          htmlstring = regex.replace(htmlstring, @"&#(d+);", "",
  32:            regexoptions.ignorecase);
  33:  
  3          htmlstring.replace("<", "");
  3          htmlstring.replace(">", "");
  36:          htmlstring.replace("rn", "");
  37:          htmlstring = httpcontext.current.server.htmlencode(htmlstring).trim();
  38:  
  39:          return htmlstring;
  40:      }

  
  
  //方法二
 

  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, @"([rn])[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("rn", "");
  htmlstring = httpcontext.current.server.htmlencode(htmlstring).trim();

  return htmlstring;
  }

  //方法三
  
 

/// <summary>
/// 过滤html标签
/// </summary>
/// <param name="html"></param>
/// <returns></returns>
public static string removehtmltags(string html)
 {
       html = regex.replace(html, "<script[^>]*?>.*?</script>", "", regexoptions.ignorecase);
       html = regex.replace(html, "<[^>]*>", "", regexoptions.ignorecase);
       return html;
}

///方法四

str = system.text.regularexpressions.regex.replace(str,"<[^>]*?>", "");
string result = regex.replace(html,@"< */? *w+[^>]*>","");

%>

时间: 2024-10-30 07:06:00

ASP.NET过滤所有HTML标签几种方法的相关文章

asp.net跳转页面的3种方法

目前进行.net学习的很多学员对于asp.net跳转页面的几种方法不是很清楚,了解asp.net跳转页面的三种方法,对于以后的编程会有很大帮助,下面我们就来看一下: 1. response.redirect 这个跳转页面的方法跳转的速度不快,因为它要走2个来回(2次postback),但他可以跳 转到任何页面,没有站点页面限制(即可以由雅虎跳到新浪),同时不能跳过登录保护.但速度慢是其最大缺陷!redirect跳转机制:首先是发送一个 http请求到客户端,通知需要跳转到新页面,然后客户端在发送

asp.net读取excel文件的三种方法示例

 这篇文章主要介绍了asp.net读取excel文件的三种方法示例,包括采用OleDB读取Excel文件.引用的com组件读取Excel文件.用文件流读取,需要的朋友可以参考下 方法一:采用OleDB读取Excel文件   把Excel文件当做一个数据源来进行数据的读取操作,实例如下:  代码如下: public DataSet ExcelToDS(string Path)    {    string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;&q

ASP.NET连接 Access数据库的几种方法_实用技巧

web.config 第一种方法: <?xml version="1.0" encoding="utf-8"?> <!-- 有关如何配置 ASP.NET 应用程序的详细消息,请访问 http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <appSettings> <add key="AccessConnString"

asp.net 过滤所有html标签正则表达式

asp教程.net 过滤所有html标签正则表达式 //下面提供二种asp.net教程 过滤所有html标签正则表达式,都是过滤所有html代码,用的是replace替换. regex reg = new regex(@"(?is)<span[^>]*>(.*?)</span>"); matchcollection mc = reg.matches(""); foreach (match m in mc) {   str+= m.gro

比较ASP生成静态HTML文件的几种方法

将动态页面转换生成静态Html文件有许多好处,比如生成html网页有利于被搜索引擎收录(特别是对接受动态参数的页面).前台访问时,脱离了数据访问,减轻对数据库访问的压力,加快网页打开速度. 当然,凡事有利必有弊,生成HTML页面无形中也耗费大量的磁盘空间以存放这些静态文件,在编辑页面过程中除读写数据库外,也要读写服务器磁盘,页面样式的改动必须重新生成全部HTML文件,等等. 像很多搜索引擎,都可以提交网站的页面地址列表,动态文件的收录问题已经不算是个问题了(如google sitemap).得失

ASP生成静态HTML文件的几种方法比较

比较|静态 将动态页面转换生成静态Html文件有许多好处,比如生成html网页有利于被搜索引擎收录(特别是对接受动态参数的页面).前台访问时,脱离了数据访问,减轻对数据库访问的压力,加快网页打开速度. 当然,凡事有利必有弊,生成HTML页面无形中也耗费大量的磁盘空间以存放这些静态文件,在编辑页面过程中除读写数据库外,也要读写服务器磁盘,页面样式的改动必须重新生成全部HTML文件,等等. 像很多搜索引擎,都可以提交网站的页面地址列表,动态文件的收录问题已经不算是个问题了(如google sitem

ASP中实现分页显示的七种方法_应用技巧

在微软的ASP编程体系中,ADO对象的建立,使得从网页访问数据库成为一件易事,特别是ADO的Recordset对象使得控制数据的输出显示更为方便.自由.而在Visual InterDev6.0(以下简称VI6.0)中,由于Script Object Model(以下简称SOM).Design-Time Control(以下简称DTC)以及Data Environment Object Model(以下简称DEOM)等对象模型的引入,使网页对数据库的访问设计显得更为方便. 因为主题方面的原因,关于

ASP.NET实现页面传值的几种方法小结_实用技巧

这三种方法是:QueryString,Session和Server.Transfer.  通过URL链接地址传递  send.aspx:  复制代码 代码如下:   protected void Button1_Click(object sender, EventArgs e)    {        Request.Redirect("Default2.aspx?username=honge");    } receive.aspx: 复制代码 代码如下: string userna

ASP中实现分页显示的七种方法

在微软的ASP编程体系中,ADO对象的建立,使得从网页访问数据库成为一件易事,特别是ADO的Recordset对象使得控制数据的输出显示更为方便.自由.而在Visual InterDev6.0(以下简称VI6.0)中,由于Script Object Model(以下简称SOM).Design-Time Control(以下简称DTC)以及Data Environment Object Model(以下简称DEOM)等对象模型的引入,使网页对数据库的访问设计显得更为方便. 因为主题方面的原因,关于