ASP正则表达式清除HTML指定标签的方法

在HTML编辑器发布过程中,会出现一些自动生成的HTML标签,或者在留言板程序应用过程中,也会出现有人恶意写入一些HTML代码的情况,所以怎么精准的过滤掉某些特定的属性标签和参数呢?下面是代码:

 <%

Function ReplaceText(fString,patrn,replStr)
 Set regEx = New RegExp  ' 建立正则表达式。
 regEx.Pattern = patrn  ' 设置模式。
 regEx.IgnoreCase = True ' 设置是否区分大小写。
 regEx.Global = True   ' 设置全局可用性。
 ReplaceText = regEx.Replace(""&fString&"",""&replStr&"") ' 作替换。
 Set regEx=nothing
End Function

Function MBrow(str)
 str=ReplaceText(str,"data-scayt_word=""([^""]*)""","") '把蓝色部分的属性修改为自己所过滤的属性名称即可
 str=ReplaceText(str,"data-scaytid=""([^""]*)""","")  '红色部分则是过滤掉属性后面双引号中的质
 MBrow = str
End Function

%>

本文告诉大家使用ASP正则表达式来实现过滤功能,如何利用ASP正则表达式清除HTML指定标签,希望对大家的学习有所帮助。

(0)

相关推荐

  • ASP中过滤UBB和Html标签

    我们存储在数据库中的内容是HTML格式的,但是有时候我们需要无格式的显示这内容,这是用正则表达式实现的过滤. 复制代码 代码如下: <% function nohtml(str)  dim re  Set re=new RegExp  re.IgnoreCase =true  re.Global=True  re.Pattern="(\<.[^\<]*\>)"  str=re.replace(str," ")  re.Pattern=&quo

  • asp 使用正则表达式替换word中的标签,转为纯文本

    公司客户在使用网站后台编辑添加修改内容时,经常是直接从word文档里复制内容到编辑器里后就提交.结果是在内容显示页面上是五花八门的样式,有时也需要部分纯文本内容作为摘录使用,这些都需要清除word格式.改变客户的习惯要客户先复制到记事本里再粘贴到编辑器里编辑是很难的,所以从我们自己改变起.从网上百度了若干清除word格式的正则,使用效果不甚理想,所以自己写了清除word格式的asp函数,能满足我们自己的使用需求.函数如下: 复制代码 代码如下: function cleanWord(html)

  • ASP.NET使用正则表达式屏蔽垃圾信息

    Regex 类 表示不可变的正则表达式. 命名空间:System.Text.RegularExpressions Regex 类包含若干 static(在 Visual Basic 中为 Shared)方法,使您无需显式创建 Regex 对象即可使用正 则表达式.在 .NET Framework 2.0 版中,将缓存通过调用静态方法而编译的正则表达式,而不会缓存通过调 用实例方法而编译的正则表达式.默认情况下,正则表达式引擎将缓存 15 个最近使用的静态正则表达式.因 此,在过度地依赖一组固定的

  • HTML标签及ASP函数速查表

    HTML文件标记  <html>  <head>  <!-->  <title>  <body> 文字排版标记  <br/>  <nobr>  <p>  <pre>            原始文字样式  <center>  <blockquote>     向内缩排  <h>              标题  <strong>,<b>   

  • asp的RegExp对象正则表达式功能用法[比较全]

    RegExp对象提供简单的正则表达式支持功能. RegExp对象的用法: 复制代码 代码如下: Function RegExpTest(patrn, strng) Dim regEx, Match, Matches ' 建立变量. Set regEx = New RegExp ' 建立正则表达式. regEx.Pattern = patrn ' 设置模式. regEx.IgnoreCase = True ' 设置是否区分字符大小写. regEx.Global = True ' 设置全局可用性.

  • ASP正则表达式技巧

    复制代码 代码如下: <% str = request("str") reg = request("reg") set regex = new RegExp With regex .Pattern = reg .IgnoreCase = False .Global = True End With Set match = regex.Execute(str) If match.Count > 0 Then For Each matched in match

  • asp自动补全html标签自动闭合(正则表达式)

    复制代码 代码如下: Function closeHTML(strContent) Dim arrTags, i, OpenPos, ClosePos, re, strMatchs, j, Match Set re = New RegExp re.IgnoreCase = True re.Global = True arrTags = Array("p", "div", "span", "table", "ul&qu

  • 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代码 复制代码 代码如下: Fu

  • asp正则表达式使用详解

    复制代码 代码如下: Dim re Set re = new RegExp '创建RegExp实例 re.Pattern = "ab+c" '定义正则表达式文字,你可以在这里替换正则表达式 Dim myString myString = "abcefg" '定义要匹配的字符串,可以进行替换 Response.write(re.Execute(myString)(0)) '进行匹配测试,并写出结果 复制代码 代码如下: <% Dim re Set re = ne

  • 正则表达式速查表(ASP.NET)

    出处:RegExLib.com Regular Expression Cheat Sheet (.NET) 元字符 说明 ^ 匹配字符串的开始位置 $ 匹配字符串的结束位置 . 匹配任意单个字符(换行符 \n 除外) | 交替 {-} 指定要限定的数量 [...] 指定要匹配的字符集 (-) 对表达式进行逻辑分组 * 匹配零或多个前面的表达式 + 匹配一或多个前面的表达式 ? 匹配零或一个前面的表达式 \ 放在上面任何一个字符之前,表示匹配该字符本身.放在其他特殊字符后面,表示字符转义(见下面)

  • ASP 正则表达式常用的几种方法(execute、test、replace)

    RegExp就是建立正则的对像. 如: Set regEx = New RegExp regEx.Pattern 就是来设置正则的模式的, 如: regEx.Pattern ="/d+" regEx.IgnoreCase = True ' 设置是否区分大小写 regEx.Global = True ' 设置全程可用性. RegExp对像有3种方法,分别是execute.test.replace. test方法是对指定的字符串执行一个正则表达式搜索,并返回一个 Boolean 值指示是否

  • asp.net正则表达式删除指定的HTML标签的代码

    如果全盘删除里面的 HTML 标签,可能会造成阅读上的困难(比如 a, img 这些标签), 最好是删除一部分,保留一部分. 正则表达式里,判断 包含某些字符串 是非常容易理解的,但是如何判断 不包含某些字符串 (是字符串,不是字符,是某些,不是某个) 确实是个费解的事. 复制代码 代码如下: <(?!((/?\s?li)|(/?\s?ul)|(/?\s?a)|(/?\s?img)|(/?\s?br)|(/?\s?span)|(/?\s?b)))[^>]+> 这个正则是判断HTML标签不

随机推荐