专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »编程综合 » 正则表达式html:ASP超级链接和HTML函数正则表达式 修正版 »正文

正则表达式html:ASP超级链接和HTML函数正则表达式 修正版

来源: 发布时间:星期二, 2010年1月5日 浏览:0次 评论:0
过滤超级链接
复制代码 代码如下:

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
reg = New RegExp
reg.Pattern = "<SCRIPT[^<]*</SCRIPT>"
reg.IgnoreCase = True
reg.Global = True
clearJSCode = reg.Replace(originCode, "")
End Function


2、清除内容中HTML代码 复制代码 代码如下:

Function ClearHTMLCode(originCode)
Dim reg
reg = 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(/<rame((.|\n)*?)<\/rame>/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,"");
*/
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 正则表达式 过滤 rame 标记:
regEx.Pattern = "(<rame){1,}[^<>]*>[^\0]*(<\/rame>){1,}"
Asp 正则表达式 过滤 script :
regEx.Pattern = "(<script){1,}[^<>]*>[^\0]*(<\/script>){1,}"
Asp 正则表达式 过滤 Class 标记 :
regEx.Pattern = "(=){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 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.jb51.net">www.jb51.net</a>
Response.Write(ReplaceReg("脚本的家www.xxx.com","www\.xxx\.com","<a href=""http://www.jb51.net"">www.jb51.net</a>",1))
%>

0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: