ASP超级链接和HTML函数正则表达式

ASP超级链接和HTML函数 正则表达式的使用,最后一个实例经过测试。

过滤超级链接
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="http://www.jzxue.net">www.jzxue.net</a> _fcksavedurl=""http://www.jzxue.net">www.jzxue.net</a>"
Response.Write(ReplaceReg( " 脚本之家www.xxx.com ", " www\.xxx\.com ", " <a href=""http://www.jzxue.net"">www.jzxue.net</a> ", 1))
%>

 

你可能感兴趣的:(正则表达式)