asp函数之清除字符中html标签,ASP小偷中可控制删除文本html标签的函数

Function RemoveHTML( strText )

Dim TAGLIST

TAGLIST = ";!--;!DOCTYPE;A;ACRONYM;ADDRESS;APPLET;AREA;B;BASE;BASEFONT;" &_

"BGSOUND;BIG;BLOCKQUOTE;BODY;BR;BUTTON;CAPTION;CENTER;CITE;CODE;" &_

"COL;COLGROUP;COMMENT;DD;DEL;DFN;DIR;DIV;DL;DT;EM;EMBED;FIELDSET;" &_

"FONT;FORM;FRAME;FRAMESET;HEAD;H1;H2;H3;H4;H5;H6;HR;HTML;I;IFRAME;IMG;" &_

"INPUT;INS;ISINDEX;KBD;LABEL;LAYER;LAGEND;LI;LINK;LISTING;MAP;MARQUEE;" &_

"MENU;META;NOBR;NOFRAMES;NOSCRIPT;OBJECT;OL;OPTION;P;PARAM;PLAINTEXT;" &_

"PRE;Q;S;SAMP;SCRIPT;SELECT;SMALL;SPAN;STRIKE;STRONG;STYLE;SUB;SUP;" &_

"TABLE;TBODY;TD;TEXTAREA;TFOOT;TH;THEAD;TITLE;TR;TT;U;UL;VAR;WBR;XMP;"

Const BLOCKTAGLIST = ";APPLET;EMBED;FRAMESET;HEAD;NOFRAMES;NOSCRIPT;OBJECT;SCRIPT;STYLE;"

Dim nPos1

Dim nPos2

Dim nPos3

Dim strResult

Dim strTagName

Dim bRemove

Dim bSearchForBlock

nPos1 = InStr(strText, "

Do While nPos1 > 0

nPos2 = InStr(nPos1 + 1, strText, ">")

If nPos2 > 0 Then

strTagName = Mid(strText, nPos1 + 1, nPos2 - nPos1 - 1)

strTagName = Replace(Replace(strTagName, vbCr, " "), vbLf, " ")

nPos3 = InStr(strTagName, " ")

If nPos3 > 0 Then

strTagName = Left(strTagName, nPos3 - 1)

End If

If Left(strTagName, 1) = "/" Then

strTagName = Mid(strTagName, 2)

bSearchForBlock = False

Else

bSearchForBlock = True

End If

If InStr(1, TAGLIST, ";" & strTagName & ";", vbTextCompare) > 0 Then

bRemove = True

If bSearchForBlock Then

If InStr(1, BLOCKTAGLIST, ";" & strTagName & ";", vbTextCompare) > 0 Then

nPos2 = Len(strText)

nPos3 = InStr(nPos1 + 1, strText, "" & strTagName, vbTextCompare)

If nPos3 > 0 Then

nPos3 = InStr(nPos3 + 1, strText, ">")

End If

If nPos3 > 0 Then

nPos2 = nPos3

End If

End If

End If

Else

bRemove = False

End If

If bRemove Then

strResult = strResult & Left(strText, nPos1 - 1)

strText = Mid(strText, nPos2 + 1)

Else

strResult = strResult & Left(strText, nPos1)

strText = Mid(strText, nPos1 + 1)

End If

Else

strResult = strResult & strText

strText = ""

End If

nPos1 = InStr(strText, "

Loop

strResult = strResult & strText

RemoveHTML = strResult

End Function

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值