ASP.NET过滤HTML字符串方法总结_asp.net教程-查字典教程网
ASP.NET过滤HTML字符串方法总结
ASP.NET过滤HTML字符串方法总结
发布时间:2016-12-29 来源:查字典编辑
摘要:本文实例讲述了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教程学习
    热门asp.net教程学习
    编程开发子分类