對於提交的HTML代碼,如果含有script,iframe,frameset等標記,對網站本身會構成一定的潛在威脅,使用下面的函數可以過濾掉指定的HTML標記。
注:
1.對於單標記(如:<hr/>,<br/>等),因其對網站本身不會構成威脅,故未將單標記納過過濾範圍。
2.參數strHTML:待過濾處理的HTML代碼內容
3.參數strTAGs:為待過濾掉的HTML標記名,各標記名以英文逗號(,)為間隔
<% 'Wrttenbyi{At}CnLei.Com
FunctionlFilterBadHTML(byvalstrHTML,byvalstrTAGs)
DimobjRegExp,strOutput
DimarrTAG,i
arrTAG=Split(strTAGs,",")
SetobjRegExp=NewRegexp
strOutput=strHTML
objRegExp.IgnoreCase=True
objRegExp.Global=True
Fori=0toUBound(arrTAG)
objRegExp.Pattern="<"&arrTAG(i)&"[/s/S]+</"&arrTAG(i)&"*>"
strOutput=objRegExp.Replace(strOutput,"")
Next
SetobjRegExp=Nothing
lFilterBadHTML=strOutput
EndFunction
'Example
DimsPageCont
sPageCont="...網頁正文內容..."
sPageCont=FilterBadHTML(sPageCont,"script,iframe,object,table")
%>