当前位置: 首页 > news >正文

过滤字符串中的HTML标签

今天看到一个过滤字符串中的HTML标签的函数蛮好的,拿来给大家分享一下嘎嘎

1.      #region 过滤HTML字符串   

2.              /// <summary>   

3.              /// 过滤String中的HTML标签   

4.              /// </summary>   

5.              /// <param name="strHtml">要过滤的html字符串</param>   

6.              /// <returns></returns>   

7.              public string FilterHTML(string strHtml)   

8.              {   

9.                  string[] aryReg ={   

10.                                    @"<script[^>]*?>.*?</script>",   

11.                                    @"<("/"s*)?!?(("w+:)?"w+)("w+("s*=?"s*(([""'])(""[""'tbnr]|[^"7])*?"7|"w+)|.{0})|"s)*?("/"s*)?>",   

12.                                    @"(["r"n])["s]+",   

13.                                    @"&(quot|#34);",   

14.                                    @"&(amp|#38);",   

15.                                    @"&(lt|#60);",   

16.                                    @"&(gt|#62);",   

17.                                    @"&(nbsp|#160);",   

18.                                    @"&(iexcl|#161);",   

19.                                    @"&(cent|#162);",   

20.                                    @"&(pound|#163);",   

21.                                    @"&(copy|#169);",   

22.                                    @"("d+);",   

23.                                    @"-->",   

24.                                    @"<!--.*"n"  

25.     

26.                                };   

27.               string[] aryRep = {   

28.                                     "",   

29.                                     "",   

30.                                     "",   

31.                                     """",   

32.                                     "&",   

33.                                     "<",   

34.                                     ">",   

35.                                     " ",   

36.                                     ""xa1",//chr(161),   

37.                                     ""xa2",//chr(162),   

38.                                     ""xa3",//chr(163),   

39.                                     ""xa9",//chr(169),   

40.                                     "",   

41.                                     ""r"n",   

42.                                     ""  

43.                                 };   

44.               string newReg = aryReg[0];   

45.               string strOutput = strHtml;   

46.               for (int i = 0; i < aryReg.Length; i++)   

47.               {   

48.                   Regex regex = new Regex(aryReg[i], RegexOptions.IgnoreCase);   

49.                   strOutput = regex.Replace(strOutput, aryRep[i]);   

50.               }   

51.               strOutput.Replace("<""");   

52.               strOutput.Replace(">""");   

53.               strOutput.Replace(""r"n""");   

54.     

55.               return strOutput;   

56.           }  

57.           #endregion  

 

 

时隔几日,我发现了另外的一个相同作用的函数,望大家测试一下那个好一点

1.      public static string InnerText(string HTML)   

2.     {   

3.             Regex regEx = new System.Text.RegularExpressions.Regex(@"<"/*[^<>]*>", RegexOptions.IgnoreCase);   

4.             return regEx.Replace(HTML, "");   

5.      }

 

转载于:https://www.cnblogs.com/jimtomjim/archive/2009/05/25/dotnet_string.html

相关文章:

  • IE8的模式修改优化Windows7
  • C语言文件操作函数大全
  • 用户控件路径的解决方案
  • WCF分布式开发常见错误(14):无效的操作异常,At least one operation on the ...
  • VM虚拟机安装及使用方法 (视频)
  • RedHat Linux AS4.0系统管理与网络服务配置
  • 结构和类的区别
  • Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之13.Form表单处理(2)
  • 最好用的闪存数据恢复软件
  • 【3】CCNA理论第二天
  • 人生如戏---也谈谈面对困难
  • 别忘了人生另外三分之二的风景
  • 十天学会php之第四天
  • 七大步骤让引擎蜘蛛天天光临你的网站
  • 【心情】今天看了日全食。。。
  • [译]CSS 居中(Center)方法大合集
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • Android单元测试 - 几个重要问题
  • Cookie 在前端中的实践
  • CSS盒模型深入
  • IndexedDB
  • Java Agent 学习笔记
  • JAVA并发编程--1.基础概念
  • java正则表式的使用
  • JDK 6和JDK 7中的substring()方法
  • php中curl和soap方式请求服务超时问题
  • Python进阶细节
  • React组件设计模式(一)
  • 从零开始学习部署
  • 大型网站性能监测、分析与优化常见问题QA
  • 基于阿里云移动推送的移动应用推送模式最佳实践
  • 力扣(LeetCode)21
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 实习面试笔记
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 一文看透浏览器架构
  • kubernetes资源对象--ingress
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (html转换)StringEscapeUtils类的转义与反转义方法
  • (强烈推荐)移动端音视频从零到上手(下)
  • (一)WLAN定义和基本架构转
  • (转载)hibernate缓存
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .net refrector
  • .net 后台导出excel ,word
  • .NET应用架构设计:原则、模式与实践 目录预览
  • ??eclipse的安装配置问题!??
  • @德人合科技——天锐绿盾 | 图纸加密软件有哪些功能呢?
  • [ vulhub漏洞复现篇 ] GhostScript 沙箱绕过(任意命令执行)漏洞CVE-2019-6116
  • [ 手记 ] 关于tomcat开机启动设置问题
  • [BUUCTF]-PWN:wustctf2020_number_game解析(补码,整数漏洞)
  • [CentOs7]搭建ftp服务器(2)——添加用户
  • [CentOs7]图形界面