html中怎么去除多余的代码,去除HTML代码中所有标签的两种方法

去除HTML代码中所有标签

'******************************

'函数:RemoveHTML_A(strText)

'参数:strText,待处理的字符串

'作者:阿里西西

'日期:2007/7/12

'描述:去除HTML代码中所有标签

'示例:欢迎光临阿里西西")%>

'******************************

Function RemoveHTML_A(strText)

Dim nPos1

Dim nPos2

nPos1 = InStr(strText, "

Do While nPos1>0

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

If nPos2>0 Then

strText = Left(strText, nPos1 - 1) & Mid(strText, nPos2 + 1)

Else

Exit Do

End If

nPos1 = InStr(strText, "

Loop

RemoveHTML_A = strText

End Function

%>

去除HTML代码中所有标签之二

'******************************

'函数:RemoveHTML_B(strText)

'参数:strText,待处理的字符串

'作者:阿里西西

'日期:2007/7/12

'描述:去除HTML代码中所有标签

'示例:欢迎光临阿里西西")%>

'******************************

Function RemoveHTML_B( strText )

Dim RegEx

Set RegEx = New RegExp

RegEx.Pattern = "]*>"

RegEx.Global = True

RemoveHTML_B = RegEx.Replace(strText, "")

End Function

%>

去除HTML代码中所有标签之三

'******************************

'函数:RemoveHTML_C(strText)

'参数:strText,待处理的字符串

'作者:阿里西西

'日期:2007/7/12

'描述:去除HTML代码中所有标签

'示例:欢迎光临阿里西西")%>

'******************************

Function RemoveHTML_C( 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_C = strResult

End Function

%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值