正则表达式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
相关文章读者评论发表评论 |