|
CLASSIC ASP超級鏈接和HTML函數正則表達式 修正版
避免連結失效,備份資料內容
原始連結:http://www.loliman3000.com/tech/2fe165ecb260e54edd191247.php
- 過濾超級鏈接
- Function RegRemoveHref(HTMLstr)
- Set ra = New RegExp
- ra.IgnoreCase = True
- ra.Global = True
- ra.Pattern = "<A[^>]+>(.+?)<\/A>"
- RegRemoveHref = ra.replace(HTMLstr,"$1")
- END Function
- 過濾所有HTML代碼
- Function RemoveHTML(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
- RemoveHTML=strHTML
- Set objRegExp = Nothing
- End Function
- 過濾所有HTML代碼 和空格換行
- Function RemoveHTML(strHTML)
- Dim objRegExp, Match, Matches
- Set objRegExp = New Regexp
- objRegExp.IgnoreCase = True
- objRegExp.Global = True
- objRegExp.Pattern = "<.+?>"
- 'objRegExp.Pattern = "(\r|\n|\r\n| |\t| )"
- Set Matches = objRegExp.Execute(strHTML)
- For Each Match in Matches
- strHtml=Replace(strHTML,Match.Value,"")
- Next
- objRegExp.Pattern = "(\r|\n|\r\n| |\t| )"
- Set Matches = objRegExp.Execute(strHTML)
- For Each Match in Matches
- strHtml=Replace(strHTML,Match.Value,"")
- Next
- RemoveHTML=strHTML
- Set objRegExp = Nothing
- End Function
- asp使用正則表達式去除script代碼和HTML代碼
- 一、清楚內容中的Javsscript 代碼 這個代碼的作用是去掉用<script </script>標記包含的所有部分。
- 根據實際需要,它也許不能滿足要求。如果用在屏蔽客戶提交代碼的地方,應保証這一步在最後執行。
- 很多人還會拼湊這樣的標記,應小心。
- Function ClearJSCode(originCode)
- Dim reg
- set reg = New RegExp
- reg.Pattern = "<SCRIPT[^<]*</SCRIPT>"
- reg.IgnoreCase = True
- reg.Global = True
- clearJSCode = reg.Replace(originCode, "")
- End Function
- 二、清除內容中的HTML代碼
- Function ClearHTMLCode(originCode)
- Dim reg
- set reg = new RegExp
- reg.Pattern = "<[^>]*>"
- reg.IgnoreCase = True
- reg.Global = True
- ClearHTMLCode = reg.Replace(originCode, "")
- End Function
- <js jsid="1" jsname="去除內容頁里干擾信息"><![CDATA[
- var sourcehtml=function(){/*%s*/}.toString().slice(13, -3);
- parser9527=function()
- {
- var ss=sourcehtml;
- ss=ss.replace(/<.*?>/ig,"");
- ss=ss.replace(/(\r|\n|\r\n| |\t| )/ig,"");
- ss=ss.replace(/(<\/a>)/ig,"");
- ss=ss.replace(/<a((.|\n)*?)>/ig,"");
- ss=ss.replace("_網易新聞中心","");
- /*
- ss=ss.replace(/<iframe((.|\n)*?)<\/iframe>/ig,"");
- ss=ss.replace(/<script((.|\n)*?)<\/script>/ig,"");
- ss=ss.replace(/<address((.|\n)*?)<\/address>/ig,"");
- ss=ss.replace(/(<\/a>)/ig,"");
- ss=ss.replace(/<a((.|\n)*?)>/ig,"");
- ss=ss.replace(/<SELECT((.|\n)*?)<\/SELECT>/ig,"");
- ss=ss.replace(/<TABLE((.|\n)*?)<\/TABLE>/ig,"");
- ss=ss.replace(/<img((.|\n)*?)>/ig,"");
- ss=ss.replace(/<TABLE((.|\n)*?)>/ig,"");
- ss=ss.replace(/(<\/TABLE>)/ig,"");
- ss=ss.replace(/<TR((.|\n)*?)>/ig,"<BR>");
- ss=ss.replace(/(<\/TR>)/ig,"");
- ss=ss.replace(/<nobr((.|\n)*?)>/ig,"<BR>");
- ss=ss.replace(/<nobr((.|\n)*?)>/ig,"");
- ss=ss.replace(/(<\/nobr>)/ig,"");
- ss=ss.replace(/<TD((.|\n)*?)>/ig," ");
- ss=ss.replace(/(<\/TD>)/ig,"");
- ss=ss.replace(/<span id=((.|\n)*?)<\/small>/ig,"");
- ss=ss.replace(/<div((.|\n)*?)>/ig,"");
- ss=ss.replace(/(<\/div>)/ig,"");
- */
- return ss;
- }
- parser9527();
- ]]></js>
- ASP常用的正則過濾函數 可過濾html js style div font
- 開發程序,經常要用到正則表達式進行過濾一些不需要的東西,比如html js style div font,有時候需要過濾極個別的,有時候需要過濾好幾種,不管怎麼過濾,萬變不離其宗。
- 這是我收藏的一些過濾函數,可以用來過濾您不需要的代碼。如果需要過濾多種,可以嵌套使用,也可以自己整合代碼。不過不建議嵌套使用,因為那樣效率太低。
- Asp 正則表達式 過濾 所有 html 標記 :
- Function LoseHtml(ContentStr)
- Dim ClsTempLoseStr,regEx
- ClsTempLoseStr = Cstr(ContentStr)
- Set regEx = New RegExp
- regEx.Pattern = "<\/*[^<>]*>"
- regEx.IgnoreCase = True
- regEx.Global = True
- ClsTempLoseStr = regEx.Replace(ClsTempLoseStr,"")
- LoseHtml = ClsTempLoseStr
- End function
-
- Asp 正則表達式 過濾 style 標記 :
- regEx.Pattern = "(<style)+[^<>]*>[^\0]*(<\/style>)+"
- Asp 正則表達式 過濾 層 div 標記 :
- regEx.Pattern = "<(\/){0,1}div[^<>]*>"
- Asp 正則表達式 過濾 鏈接 a 標記 :
- regEx.Pattern = "<(\/){0,1}a[^<>]*>"
- Asp 正則表達式 過濾 字體 font 標記 :
- regEx.Pattern = "<(\/){0,1}font[^<>]*>"
- Asp 正則表達式 過濾 span 標記 :
- regEx.Pattern = "<(\/){0,1}span[^<>]*>"
- Asp 正則表達式 過濾 object 標記 :
- regEx.Pattern = "<object.*?/object>"
- Asp 正則表達式 過濾 iframe 標記:
- regEx.Pattern = "(<iframe){1,}[^<>]*>[^\0]*(<\/iframe>){1,}"
- Asp 正則表達式 過濾 script :
- regEx.Pattern = "(<script){1,}[^<>]*>[^\0]*(<\/script>){1,}"
- Asp 正則表達式 過濾 Class 標記 :
- regEx.Pattern = "(class=){1,}(""|\'){0,1}\S+(""|\'|>|\s){0,1}"
- 字符串替換 Replace 的正則表達式 :
- <%
- Function ReplaceReg(str,patrn,replStr,Ignor)
- '=========================================
- '參數解釋:
- 'str 原來的字符串
- 'patrn 要替換的字符串(正則表達式)
- 'replStr 要替換成的字符串
- 'Ignor 是否區分大小寫(1不區分,0區分)
- '=========================================
- Dim regEx ' 建立變量。
- If Ingor=1 Then Ingor=true else Ingor=false
- Set regEx = New RegExp ' 建立正則表達式。
- regEx.Pattern = patrn ' 設置模式。
- regEx.IgnoreCase = Ignor ' 設置是否區分大小寫。
- regEx.Global=True
- ReplaceReg = regEx.Replace(str,replStr) ' 作替換。
- End Function
- '例如 將 www.xxx.com 替換成 <a href=""></a>
- Response.Write(ReplaceReg("腳本之家www.xxx.com","www\.xxx\.com","<a href=""""></a>",1))
- %>
複製代碼 |
|