来源:自学PHP网 时间:2014-10-28 17:28 作者: 阅读:次
[导读] 这个图片正则先检查图片的地址,不是本地的则用本地的asp突破盗链,方便使用,注意是答chinaz的朋友问的一个问题...
直接用正则替换,但没有判断功能
Function FormatImg(content) dim re Set re=new RegExp re.IgnoreCase =true re.Global=True re.Pattern="(script)" Content=re.Replace(Content,"script") re.Pattern="<img.[^>]*src(=| )(.[^>]*)>" Content=re.replace(Content,"<img src=$2 style=""cursor: pointer"" alt=""在新窗口中打开浏览"" onclick=""javascript:window.open(this.src);"" onload=""javascript:resizepic(this)"" border=""0""/>") set re = nothing FormatImg = content End Function 这段代码将内容中的图片替换成 <img src=$2 style="cursor: pointer" alt="在新窗口中打开浏览" onclick="javascript:window.open(this.src);" onload="javascript:resizepic(this)" border="0"/> 这中形式的, 我现在需要提取$2的前7个字符,用来判断是否需要被替换,如果前7=特定的字符,就不要替换,但获取$2的前7 无法。大家有什么办法支下招撒? 主要是参考了下面的代码,大家可以看下 '连接 re.Pattern = "\[url=(.[^\]]*)\](.[^\[]*)\[\/url]" Set strMatchs=re.Execute(strContent) For Each strMatch in strMatchs tmpStr1=checkURL(strMatch.SubMatches(0)) tmpStr2=strMatch.SubMatches(1) strContent=replace(strContent,strMatch.Value,"<a target=""_blank"" href="""&tmpStr1&""">"&tmpStr2&"</a>",1,-1,0) Next 这里是正则的Matchs的说明文档 http://www.jb51.net/article/15362.htm 下面由脚本之家测试代码,大家可以做出函数 <% content2="<img src='http://www.jb51.net/images/logo.gif' width=100 />中间一些内容<img src='http://www.kanshule.com/indeximg/logo.GIF' width=200 />" dim re Set re=new RegExp re.IgnoreCase =true re.Global=True re.Pattern="<img.[^>]*src(=| )(.[^>]*)[/]?>" set Matches=re.execute(content2) For Each strMatch in Matches tmpStr1=(strMatch.SubMatches(1)) tmpurl=replace(replace(tmpStr1,"'",""),"""","") //response.write left(tmpurl,20) if left(tmpurl,19)="http://www.jb51.net" then picurl=tmpurl else picurl="http://img.jb51.net/showpic.asp?url="&tmpurl end if Content=replace(Content2,strMatch.Value,"<img src="&picurl&" style=""cursor: pointer"" alt=""在新窗口中打开浏览"" onclick=""javascript:window.open(this.src);"" onload=""javascript:resizepic(this)"" border=""0""/>") Next response.write Content set re = nothing %> |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com