加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

ASP删除img标签的style属性只保留src的正则函数

发布时间:2021-12-20 22:53:40 所属栏目:Asp教程 来源:互联网
导读:做手机网站的时候图片要做自适应,由于手机网站跟PC网站共用1个数据库,导致文章内的图片有部分带有:等属性,导致手机端图片width:100%失效,去掉mg标签style属性只保留src即可解决问题 ASP去除img标签style属性只保留src 功能:将IMG代码格式化为img src=X
做手机网站的时候图片要做自适应,由于手机网站跟PC网站共用1个数据库,导致文章内的图片有部分带有:等属性,导致手机端图片width:100%失效,去掉mg标签style属性只保留src即可解决问题
 
 
ASP去除img标签style属性只保留src
 
'功能:将IMG代码格式化为<img src="XXX" />格式,只保留SRC属性,去掉IMG标签的其他属性。
 
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
上面的代码确实写得不错,原理也可以参考下面的代码
 
js过滤img里style属性
 
var str = "<img style='ddddddddd'>"
str = str.replace(/<img[^>]*>/gi, function (match, capture) {
return match.replace(/styles*?=s*?([‘"])[sS]*?1/ig, '')
}))
console.log(str)
不是替换直接通过js设置
 
var is=document.images;
for(var i=0,len=is.length;i<len;i++){
is[i].style.cssText=""
}

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读