余志国网站设计工作室是专业从事义乌网站建设、义乌外贸网站建设、义乌网站制作、义乌网站设计的专业义乌网站建设工作室,是义乌外贸网站建设专家!

ASP网页过滤HTML代码的多种方法

分类:程序开发 Tags: asp 过滤 评论:0 浏览:4815 最近更新时间:2008/6/13 19:58:26

1,过滤所有HTML代码,只留文字
 
  1. <%
  2. '过滤所有HTML代码
  3. Function NoHtml(str)
  4. dim re
  5. Set re=new RegExp
  6. re.IgnoreCase =true
  7. re.Global=True
  8. re.Pattern="(\<.[^\<]*\>)"
  9. str=re.replace(str,"")
  10. NoHtml=str
  11. set re=nothing
  12. End Function
  13. %>
2,过滤所有HTML代码方法
 
  1. <%
  2.  
  3. Function RemoveHTML(strHTML) 
  4. Dim objRegExp, Match, Matches 
  5. Set objRegExp = New Regexp 
  6. objRegExp.IgnoreCase = True 
  7. objRegExp.Global = True 
  8. '取闭合的<> 
  9. objRegExp.Pattern = "<.+?>" 
  10. '进行匹配 
  11. Set Matches = objRegExp.Execute(strHTML) 
  12. ' 遍历匹配集合,并替换掉匹配的项目 
  13. For Each Match in Matches 
  14. strHtml=Replace(strHTML,Match.Value,""
  15. Next 
  16. RemoveHTML=strHTML 
  17. Set objRegExp = Nothing 
  18. End Function 
  19.  
  20. '过滤图片正则表达式: <img.+?> 
  21.  
  22. %>
  23.  
3,过滤所有HTML代码方法
 
  1. <%
  2.  
  3. Function delHtml(strHtml) 
  4. Dim objRegExp, strOutput 
  5. Set objRegExp = New Regexp ' 建立正则表达式; 
  6. objRegExp.IgnoreCase = True ' 设置是否区分大小写;
  7. objRegExp.Global = True '是匹配所有字符串还是只是第一个;
  8. objRegExp.Pattern = "(<[a-zA-Z].*?>)|(<[\/][a-zA-Z].*?>)" ' 设置模式引号中的是正则表达式,用来找出html标签; 
  9. strOutput = objRegExp.Replace(strHtml, ""'将html标签去掉; 
  10. strOutput = Replace(strOutput, "<""<"'防止非html标签不显示; 
  11. strOutput = Replace(strOutput, ">"">"
  12. delHtml = strOutput 
  13. Set objRegExp = Nothing 
  14. End Function 
  15.  
  16. %> 
  17.  
4,过滤所有HTML代码方法
 
  1. <%
  2.  
  3. '转化html标签为code代码
  4.  
  5. function coder(str) 
  6. dim i 
  7. if isnull(str) then : coder="" : exit function : end if 
  8. for i = 1 to len(str) 
  9. select case mid(str,i,1) 
  10. case "<" : coder = coder &"&lt;" 
  11. case ">" : coder = coder &"&gt;" 
  12. case "&" : coder = coder &"&amp;" 
  13. case chr(9) : coder = coder &"&nbsp; &nbsp; " 
  14. case chr(13) : coder = coder &"<br>" 
  15. case chr(32) : coder = coder &"&nbsp;" 
  16. case chr(34) : coder = coder &"&quot;" 
  17. case chr(39) : coder = coder &"&#39;" 
  18. case else : coder = coder & mid(str,i,1) 
  19. end select 
  20. next 
  21. end function 
  22.  
  23. '过滤javascript字符 
  24.  
  25. function movejs(str) 
  26. dim objregexp,str1 
  27. set objregexp=new regexp 
  28. objregexp.ignorecase =true 
  29. objregexp.global=true 
  30. objregexp.pattern="\<script.+?\<\/script\>" 
  31. a=objregexp.replace(str,""
  32. objregexp.pattern="\<[^\<]+>" 
  33. movejs=objregexp.replace(a,""
  34. end function 
  35.  
  36. '过滤html标签只剩<br> 
  37. function filterhtml(byval fstring) 
  38. if isnull(fstring) or trim(fstring)="" then 
  39. filterhtml="" 
  40. exit function 
  41. end if 
  42. fstring = replace(fstring, "<br />""[br]"
  43. fstring = replace(fstring, "<br>""[br]"
  44.  
  45. '过滤html标签 
  46. dim re 
  47. set re = new regexp 
  48. re.ignorecase=true 
  49. re.global=true 
  50. re.pattern="<(.+?)>" 
  51. fstring = re.replace(fstring, ""
  52. set re=nothing 
  53. fstring = replace(fstring, "[br]""<br />"
  54. filterhtml = fstring 
  55. end function 
  56. %> 
5,过滤仅保留<br>,<p>换成<br>
 
  1. Function filterhtml(byval fstring)
  2. if isnull(fstring) or trim(fstring)="" then
  3. filterhtml=""
  4. exit function
  5. end if
  6. '过滤html标签 仅保留<br>,把<p>换成<br>
  7. dim re
  8. set re = new regexp '创建一个保存有关正则表达式模式匹配信息的固有全局对象
  9. re.ignorecase=true '忽略大小写
  10. re.global=true '设置全局可用性
  11. re.pattern="<br( )?(/)?>" '设置匹配模式,注:括号内有一空格.用来匹配<br>,<br/>,<br />
  12. fstring=re.replace(fstring,"[|br|]"'将匹配的字符串替换为[|br|]
  13. re.pattern="<( )?(/)?p>" '设置匹配模式,注:括号内有一空格.用来匹配<p>,</p>,< /p>
  14. fstring=re.replace(fstring,"[|br|]")
  15. re.pattern="<(.+?)>" '匹配所有html标签
  16. fstring=re.replace(fstring,"")
  17. set re=nothing
  18. fstring = replace(fstring,"[|br|]","<br>"'将 [|br|]还原为<br>
  19. filterhtml = fstring
  20. end function

本文地址:https://www.yuzhiguo.com/352/
  • 相关文章
  • 推荐文章
  • 最新文章
发表评论





您的IP:100.26.182.28,来自:

留言

 


免费咨询
建站咨询热线
15967985565

扫一扫微信咨询
QQ: 358758308 Skype: yuzhiguo Facebook: yuzhiguo Email