手机
当前位置:查字典教程网 >编程开发 >asp.net教程 >ASP.NET过滤HTML字符串方法总结
ASP.NET过滤HTML字符串方法总结
摘要:本文实例讲述了ASP.NET过滤HTML字符串的方法,供大家参考使用,具体代码如下:///去除HTML标记/////////包括HTML的源...

本文实例讲述了ASP.NET过滤HTML字符串的方法,供大家参考使用,具体代码如下:

/// <summary>去除HTML标记 /// /// </summary> /// <param name="Htmlstring">包括HTML的源码</param> /// <returns>已经去除后的文字</returns> public static string GetNoHTMLString(string Htmlstring) { //删除脚本 Htmlstring = Regex.Replace(Htmlstring, @"<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, @"", RegexOptions.IgnoreCase); Htmlstring.Replace("<", ""); Htmlstring.Replace(">", ""); Htmlstring.Replace("rn", ""); Htmlstring = HttpContext.Current.Server.HtmlEncode(Htmlstring).Trim(); return Htmlstring; } /// <summary>获取显示的字符串,可显示HTML标签,但把危险的HTML标签过滤,如iframe,script等。 /// /// </summary> /// <param name="str">未处理的字符串</param> /// <returns></returns> public static string GetSafeHTMLString(string str) { str = Regex.Replace(str, @"<applet[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<body[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<embed[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<frame[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<script[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<frameset[^>]*?>.*?</frameset>", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<html[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<iframe[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<style[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<layer[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<link[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<ilayer[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<meta[^>]*?>.*", "", RegexOptions.IgnoreCase); str = Regex.Replace(str, @"<object[^>]*?>.*", "", RegexOptions.IgnoreCase); return str; }

【ASP.NET过滤HTML字符串方法总结】相关文章:

ASP.NET 重定向的几种方法小结

ASP.NET清空SQL日志的具体方法

ASP.NET用户控件技术

ASP.NET 运行.bat文件的实现方法

ASP.NET表单验证方法详解第1/2页

ASP.NET 中文显示之两种解决方法

ASP.NET 页面间数据传递方法

ASP.NET2.0服务器控件之Render方法

ASP.NET中动态控制RDLC报表

ASP.NET中实现获取调用方法名

精品推荐
分类导航