asp去除html的函数代码分析附实例说明
2011年11月30日
下面这段代码,不会替换ld<sad中间的<,所以内容仍然是正常的
<%
function nohtml(str)
dim re
Set re=new RegExp
re.IgnoreCase =true
re.Global=True
re.Pattern="(<.[^<]*>)"
str=re.replace(str," ")
re.Pattern="(</[^<]*>)"
str=re.replace(str," ")
str=replace(str," ","")
str=replace(str," ","")
nohtml=str
set re=nothing
end function
str="<title>sadjksjdl来客网欢迎你sajdljsald<sadsadsad<br>" '这里是测试
response.write nohtml(str)
%>
结果为:
sadjksjdl来客网欢迎你sajdljsald<sadsadsad
不过下面的代码是不问的,直接看到<就忘后面无限制的匹配
<%
Function dropHtml(Byval strHTML)
Dim objRegExp, Match, Matches
Set objRegExp = New Regexp
objRegExp.IgnoreCase = True
objRegExp.Global = True
'取闭合的<>
objRegExp.Pattern = "<.+?>"
'进行匹配
Set Matches = objRegExp.Execute(strHTML)
' 遍历匹配集合,并替换掉匹配的项目
For Each Match in Matches
strHtml=Replace(strHTML,Match.Value,"")
Next
dropHtml=strHTML
Set objRegExp = Nothing
End Function
str="<title>sadjksjdl来客网欢迎你sajdljsald<sadsadsad<br>" '这里是测试
response.write dropHtml(str)
%>
结果为:
sadjksjdl来客网欢迎你sajdljsald