一个asp替换函数img里面多余的代码

<%
Response.Write(Server.HTMLEncode(FixImg("<img onclick=""if(this.width>screen.width-461) window.open('qq/20082181405371.jpg');"" alt="""" border=""0"" src=""qq/20082181405371.jpg"" />")))
%>
<%
'功能:将IMG代码格式化为<img src="XXX" />格式.
Function FixImg(sString)

Dim sReallyDo, regEx, iReallyDo
    Dim oMatches, cMatch
    Dim tStartTime, tEndTime
    If IsNull(sString) Then
        FixImg = ""
        Exit Function
    End If
    sReallyDo = sString
    On Error Resume Next
    sReallyDo = Replace(sReallyDo, vbCr, " ")
    sReallyDo = Replace(sReallyDo, vbLf, " ")
    sReallyDo = Replace(sReallyDo, vbTab, " ")
    sReallyDo = Replace(sReallyDo, "<img ", vbCrLf & "<img ", 1, -1, 1)
    sReallyDo = Replace(sReallyDo, "/>", " />", 1, -1, 1)
    sReallyDo = ReplaceAll(sReallyDo, "= ", "=", True)
    sReallyDo = ReplaceAll(sReallyDo, "> ", ">", True)
    sReallyDo = Replace(sReallyDo, "><", ">" & vbCrLf & "<")
    sReallyDo = Trim(sReallyDo)
    On Error GoTo 0
    Set regEx = New RegExp
    regEx.IgnoreCase = True
    regEx.Global = True
    '//去除onclick,onload等脚本
    regEx.Pattern = "\s[on].+?=([\""|\'])(.*?)\1"
    sReallyDo = regEx.Replace(sReallyDo, "")
    '//将SRC不带引号的图片地址加上引号
    regEx.Pattern = "<img.*?\ssrc=([^\""\'\s][^\""\'\s>]*).*?>"
    sReallyDo = regEx.Replace(sReallyDo, "<img src=""$1"" />")
    '//正则匹配图片SRC地址
    regEx.Pattern = "<img.*?\ssrc=([\""\'])([^\""\']+?)\1.*?>"
    sReallyDo = regEx.Replace(sReallyDo, "<img src=""$2"" />")
    FixImg = sReallyDo
End Function
%>
<%
'功能:返回字符串,其中指定数目的某子字符串 全部 被替换为另一个子字符串。
'来源:http://jorkin.reallydo.com/article.asp?id=406
'需要Bint函数:http://jorkin.reallydo.com/article.asp?id=395

Function ReplaceAll(sExpression, sFind, sReplaceWith, bAll)
    If IsNull(sExpression) Then ReplaceAll = "" : Exit Function
    If (StrComp(bAll, "True", 1) = 0) Or (CBool(Bint(bAll)) = True) Then
        Do While InStr( 1, sExpression, sFind, 1) > 0
            sExpression = Replace(sExpression, sFind, sReplaceWith, 1, -1, 1)
            If InStr( 1, sReplaceWith , sFind , 1) >0 Then Exit Do
        Loop
    Else
        Do While InStr(sExpression, sFind) > 0
            sExpression = Replace(sExpression, sFind, sReplaceWith)
            If InStr(sReplaceWith, sFind ) > 0 Then Exit Do
        Loop
    End If
    ReplaceAll = sExpression
End Function
%>
<%
'功能:只取数字
'来源:http://jorkin.reallydo.com/article.asp?id=395

Function Bint(Str)
    Str = Trim(Str)
    If Str = "" Or IsNull(Str) Or Not IsNumeric(Str) Then Str = "0"
    Bint = Round(Str, 0)
End Function
%>

(0)

相关推荐

  • 一个asp替换函数img里面多余的代码

    <% Response.Write(Server.HTMLEncode(FixImg("<img onclick=""if(this.width>screen.width-461) window.open('qq/20082181405371.jpg');"" alt="""" border=""0"" src=""qq/200821814

  • ASP替换、保存远程图片实现代码

    ASP通过函数来实现替换.保存远程图片,完成自动采集图片.提取图片的功能,函数中自动判断重复图片,智能分析链接路径,并转成成相对的图片地址保存在你指定的网站目录中,我们可将此函数用在后台的编辑器中,当你复制了含有图片的内容后,本代码会自动帮你上传图片.同时本代码也是采集程序中的重要处理函数,函数代码如下: Function ReplaceSaveRemoteFile(ConStr,strInstallDir,strChannelDir,SaveTf,TistUrl) If ConStr="$Fa

  • PHP正则替换函数preg_replace和preg_replace_callback使用总结

    在编写PHP模板引擎工具类时,以前常用的一个正则替换函数为 preg_replace(),加上正则修饰符 /e,就能够执行强大的回调函数,实现模板引擎编译(其实就是字符串替换). 详情介绍参考博文:PHP函数preg_replace() 正则替换所有符合条件的字符串 应用举例如下: 复制代码 代码如下: <?php /**  * 模板解析类  */ class Template { public function compile($template) { // if逻辑   $template

  • ASP常用函数收藏乱七八糟未整理版

    <% '******************************************************************* '取得IP地址 '******************************************************************* Function Userip()     Dim GetClientIP     '如果客户端用了代理服务器,则应该用ServerVariables("HTTP_X_FORWARDED_FOR&

  • 正则表达式链接替换函数的技巧

    正则表达式链接替换函数的技巧如下所示: 1) 字符串       前面的字符<a href="http://www.aaa.cn/000011.html">任意长度字符</a>后面的字符 替换成        前面的字符<a href="http://www.bbb.cn/folder/show.asp?id=000011">任意长度字符</a>后面的字符 2) 字符串       前面的字符<a href=&q

  • javascript字符串替换函数如何一次性全部替换掉

    JS字符串替换函数:Replace("字符串1″, "字符串2″) 1.我们都知道JS中字符串替换函数是Replace("字符串1″, "字符串2″),但是这个函数只能将第一次出现的字符串1替换掉,那么我们如何才能一次性全部替换掉了? <script> var s = "LOVE LIFE ! LOVE JAVA ..."; alert(s); alert(s.replace("LOVE ", "爱&qu

  • 一个ASP创建动态对象的工厂类(类似PHP的stdClass)

    最近整理ASP/VBScript代码,发现过去的一个ASP实现的MVC框架,可惜是个半成品,效率也成问题,不过发现里面有些我写的代码,感觉还稍稍可以拿出来见人,于是今天作此文以记之. 说是ASP,其实和VBScript也脱不了干系,VBScript语言传承于Visual Basic,VB的语法灵活度已经不尽如人意了,VBS作为其子集可想而知.神马反射.自省等先进的技术,微软在.NET中才引入.作为被抛弃的技术,也不奢望微软能够提供支持,于是顽固守旧的程序员只有绞尽脑汁的去模仿实现一些类似的功能.

  • ASP GetRef 函数指针试探

    GetRef 函数 返回一个指向一过程的引用,此过程可绑定某事件. Set object.eventname = GetRef(procname) 参数 object 必选项.事件所关联的对象的名称. eventname 必选项.要与函数绑定的事件的名称. procname 必选项.该字符串中包含 Sub 或 Function 过程的名称,该过程与事件关联. 说明 GetRef 函数可以用来将 VBScript 过程 (Function 或 Sub) 与 DHTML (动态 HTML)页面中可用

  • Linux C字符串替换函数实例详解

    Linux C字符串替换函数实例详解 最近学习linux 的基础编程知识,字符串替换函数,在网上找下资料,觉得这篇文章写的不错,记录下来,和大家分享一下: 实例代码: #include <stdio.h> #include <string.h> #include <stdlib.h> /** * * @author: cnscn@163.com * @reference: lovesnow1314@http://community.csdn.net/Expert/Top

  • jQuery标签替换函数replaceWith()的使用例子

    replaceWith简单使用 jQuery中,有一个强大的替换函数replaceWith(),使用非常简单,如: 页面有如下p标签 把所有p标签替换为"##" $('p').replaceWith('##'); 执行后的结果: 替换标签 利用这个replaceWith,我们可以把所有p标签替换为b标签,内容不变: $('p').each(function(){     $(this).replaceWith('<b>'+$(this).html()+'</b>

随机推荐