• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

正则表达式处理图片地址、img标签的方法总结分享

php 搞代码 4年前 (2022-01-22) 50次浏览 已收录 0个评论

这篇文章主要介绍了正则表达式处理图片地址、img标签的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

再上传表情或者图片地址时候很多时候不能直接上传<img src=" " />,因此在上传评论或者图片之前应该先处理一下img标签。举例如下,希望可以帮助更多的程序猿~

<span style="font-size:14px;">//第一步是获取到带有img标签的字符串 var str = '图片1<img src="arclist/sanai.png">图片2<img src="arclist/em_23.gif">图片3<img src="arclist/451.gif">';</span>

处理获取到的字符串

<span style="font-size:14px;">//将img标签替换为特定编码方式的表达式 var reg = /<img[^>]*src[=\"\'\s]+[^\.]*\/([^\.]+)\.[^\"\']+[\"\']?[^>]*>/gi; str = str.replace(reg, "[face:$1.gif]"); console.log(str);</span>

运算结果为:

<span style="font-size:14px;">图片1[face:sanai.gif]图片2[face:em_23.gif]图片3[face:451.gif]</span>

这样上传到服务器的代码就不会存在html标签,这是一种很好的应对带有图片评论且上传信息禁止html标签的方法。

接下来:

从服务器上返回的上一步中的运行结果,在反向解析,方法如下:

<span style="font-size:14px;">//将特定编码方式替换成img标签的表达式 var regg = /face:([\w]+).gif/gi; str = str.replace(regg,"<img src='images/$1.gif' />"); console.log(str);</span>

运行结果为:

<span style="font-size:14px;">图片1<img src='images/sanai.gif' />图片2<img src='images/em_23.gif' /<i style="color:transparent">本¥文来源gaodai$ma#com搞$代*码*网(</i><strong>搞代gaodaima码</strong>>图片3<img src='images/451.gif' /></span>

下面附上代码的html页,可以全部复制粘贴到html文件中直接运行,亲测可用

<span style="font-size:14px;"><!DOCTYPE html> <html>  <head>   <meta charset="UTF-8">   <title></title>  </head>  <body>   <script>    var str = '图片1<img src="arclist/sanai.png">图片2<img src="arclist/em_23.gif">图片3<img src="arclist/451.gif">';    //将img标签替换为特定编码方式的表达式    var reg = /<img[^>]*src[=\"\'\s]+[^\.]*\/([^\.]+)\.[^\"\']+[\"\']?[^>]*>/gi;    str = str.replace(reg, "[face:$1.gif]");    console.log(str);    //将特定编码方式替换成img标签的表达式    var regg = /face:([\w]+).gif/gi;    str = str.replace(regg,"<img src='images/$1.gif' />");    console.log(str);   </script>  </body> </html></span>

以上两种方法很好的解决的对img标签的正反运算,第一种方法为之前收集,不记得原作者,如有冒犯可以提出署名。后一种方法为本人自写,存在一定的局限性,欢迎大家讨论~

以上就是正则表达式处理图片地址、img标签的方法总结分享的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:正则表达式处理图片地址、img标签的方法总结分享

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址