DeCode_old.asp
上传用户:lwb168
上传日期:2021-10-31
资源大小:722k
文件大小:4k
源码类别:

Email服务器

开发平台:

ASP/ASPX

  1. <%
  2. '☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
  3. '★                                                                  ★
  4. '☆                eWebEditor - eWebSoft在线文本编辑器               ☆
  5. '★                                                                  ★
  6. '☆  版权所有: eWebSoft.com                                          ☆
  7. '★                                                                  ★
  8. '☆  程序制作: eWeb开发团队                                          ☆
  9. '★            email:webmaster@webasp.net                            ★
  10. '☆            QQ:589808                                             ☆
  11. '★                                                                  ★
  12. '☆  相关网址: [产品介绍]http://www.eWebSoft.com/Product/eWebEditor/ ☆
  13. '★            [支持论坛]http://bbs.eWebSoft.com/                    ★
  14. '☆                                                                  ☆
  15. '★  主页地址: http://www.eWebSoft.com/   eWebSoft团队及产品         ★
  16. '☆            http://www.webasp.net/     WEB技术及应用资源网站      ☆
  17. '★            http://bbs.webasp.net/     WEB技术交流论坛            ★
  18. '★                                                                  ★
  19. '☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
  20. %>
  21. <%
  22. '================================================
  23. ' 显示解释函数,返回根据参数允许显示的格式字符串,具体调用方法可从后台管理获得
  24. ' 输入参数:
  25. ' s_Content : 要转换的数据字符串
  26. ' s_Filters : 要过滤掉的格式集,用逗号分隔多个
  27. '================================================
  28. Function eWebEditor_DeCode(s_Content, sFilters)
  29. Dim a_Filter, i, s_Result, s_Filters
  30. eWebEditor_Decode = s_Content
  31. If IsNull(s_Content) Then Exit Function
  32. If s_Content = "" Then Exit Function
  33. s_Result = s_Content
  34. s_Filters = sFilters
  35. ' 设置默认过滤
  36. If sFilters = "" Then s_Filters = "script,object"
  37. a_Filter = Split(s_Filters, ",")
  38. For i = 0 To UBound(a_Filter)
  39. s_Result = eWebEditor_DecodeFilter(s_Result, a_Filter(i))
  40. Next
  41. eWebEditor_DeCode = s_Result
  42. End Function
  43. %>
  44. <Script Language=JavaScript RunAt=Server>
  45. //===============================================
  46. // 单个过滤
  47. // 输入参数:
  48. // s_Content : 要转换的数据字符串
  49. // s_Filter : 要过滤掉的单个格式
  50. //===============================================
  51. function eWebEditor_DecodeFilter(html, filter){
  52. switch(filter.toUpperCase()){
  53. case "SCRIPT": // 去除所有客户端脚本javascipt,vbscript,jscript,js,vbs,event,...
  54. html = eWebEditor_execRE("</?script[^>]*>", "", html);
  55. html = eWebEditor_execRE("(javascript|jscript|vbscript|vbs):", "$1:", html);
  56. html = eWebEditor_execRE("on(mouse|exit|error|click|key)", "<I>on$1</I>", html);
  57. html = eWebEditor_execRE("&#", "<I>&#</I>", html);
  58. break;
  59. case "TABLE": // 去除表格<table><tr><td><th>
  60. html = eWebEditor_execRE("</?table[^>]*>", "", html);
  61. html = eWebEditor_execRE("</?tr[^>]*>", "", html);
  62. html = eWebEditor_execRE("</?th[^>]*>", "", html);
  63. html = eWebEditor_execRE("</?td[^>]*>", "", html);
  64. break;
  65. case "CLASS": // 去除样式类class=""
  66. html = eWebEditor_execRE("(<[^>]+) class=[^ |^>]*([^>]*>)", "$1 $2", html) ;
  67. break;
  68. case "STYLE": // 去除样式style=""
  69. html = eWebEditor_execRE("(<[^>]+) style="[^"]*"([^>]*>)", "$1 $2", html);
  70. break;
  71. case "XML": // 去除XML<?xml>
  72. html = eWebEditor_execRE("<\?xml[^>]*>", "", html);
  73. break;
  74. case "NAMESPACE": // 去除命名空间<o:p></o:p>
  75. html = eWebEditor_execRE("</?[a-z]+:[^>]*>", "", html);
  76. break;
  77. case "FONT": // 去除字体<font></font>
  78. html = eWebEditor_execRE("</?font[^>]*>", "", html);
  79. break;
  80. case "MARQUEE": // 去除字幕<marquee></marquee>
  81. html = eWebEditor_execRE("</?marquee[^>]*>", "", html);
  82. break;
  83. case "OBJECT": // 去除对象<object><param><embed></object>
  84. html = eWebEditor_execRE("</?object[^>]*>", "", html);
  85. html = eWebEditor_execRE("</?param[^>]*>", "", html);
  86. html = eWebEditor_execRE("</?embed[^>]*>", "", html);
  87. break;
  88. default:
  89. }
  90. return html;
  91. }
  92. // ============================================
  93. // 执行正则表达式替换
  94. // ============================================
  95. function eWebEditor_execRE(re, rp, content) {
  96. oReg = new RegExp(re, "ig");
  97. r = content.replace(oReg, rp);
  98. return r; 
  99. }
  100. </Script>