<?php
$str = '<img src="http://img01.feiniu.com/images/show/detail/image/20141031/9b3bbc368d367723bbe5f755b4ce34b3.png" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/d67bcb91fed102dfcbc53946ff1435aa.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/61ee3f9da9652b7ad72a5ccfeab5f731.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/b023abffcee249558d23aafdfa32c4e6.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/c2543cca0b124b9932cd9aee1c0654f0.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/94f0bca937d9a595027daebf4ee9bb00.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/ae3bc1b541929d4653585657eadaff9a.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/8046db84706a16c7deb22045fcfc0230.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/5a968cddcbbe9a61f771fc2cabdce86f.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/ecdc381a3880a3adc04161f108f04f28.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/3a7f38f5b28da9c7643f7d6c228c624e.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/9acd5c96be6e4a591b1e18c8010c38ca.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/1df6a35c80b24f0a5cf5b5812ae401ac.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/5ee9e6614624fdae8230b4fab0f347cd.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/4fdcfee6e45f89204378a3427af2f2bf.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/23114a142ad3f0020f92107ad172689f.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/7f0101d1c37b2769c4217009eaa3d98b.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/be29031fa929f6ca2444a86b06b9ed05.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/48cb07821cec53a1de3cc54cfe3be40b.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/0805eb0a253c70349147e67d2d67e02d.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/c28e7c4d9adf828ea7fef97365a973cd.jpg" alt="" /><img src="http://img01.feiniu.com/C/show/detail/image/20141031/37400542cac93827c842efc3f9c63f04.jpg" alt="" />111<img src="http://img01.feiniu.com/C/show/detail/image/20141031/0b5ca6047c3b9de6e1d53c864e74af16.jpg" alt="" />'; function test($matches){
preg_match_all('/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i',$matches[0],$match,PREG_PATTERN_ORDER);
$imgList = &$match[0];
if($imgList && is_array($imgList)){
foreach($imgList as &$img){
preg_match('/<img.+src=\"?(.+\.(jpg|gif|bmp|bnp|png))\"?.+>/i', $img, $sub);
$url = $sub[1];
$parseUrl = parse_url($url);
if(strpos($parseUrl['host'], 'feiniu.com') !== false && !preg_match('/^\/images/', $parseUrl['path'])){
$img = preg_replace('/(<img.+src=\"?.+)(\.(jpg|gif|bmp|bnp|png)\"?.+>)/i', "\${1}_800x0\${2}", $img);
}
}
}
return implode("", $imgList);
} echo preg_replace_callback('/<img.+src=\"?.+\.(jpg|gif|bmp|bnp|png)\"?.+>/i', "test", $str);

替换IMG的更多相关文章

  1. Shell替换

    如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. #!/bin/bash a= echo -e "Value of a is ...

  2. ContentProvider域名替换小工具

    开发项目域名想怎么换就怎么换,就是这么任性! 这是一个很有意思的小工具! 这是一个方便开发人员和测试人员的小工具!! 吐槽: 一直在做Android开发,一直总有一个问题存在:做自己公司的apk开发时 ...

  3. 偷天换日:网络劫持,网页js被伪装替换。

    偷天换日 3月12号石家庄一个客户(后面简称乙方)有几家门店,平台收银(web)有一些功能无法正常使用,平台有上千家门店在使用,到目前为止别的省份都没有此问题.远程协助发现,js日期控件无法正常调用, ...

  4. StackOverFlow排错翻译 - Python字符串替换: How do I replace everything between two strings without replacing the strings?

    StackOverFlow排错翻译 - Python字符串替换: How do I replace everything between two strings without replacing t ...

  5. vim 中替换

    将80替换为10.0.0.19:80 :g/80/s//10.0.0.19:80/g

  6. freeswitch 使用mysql替换默认的sqlite

    转自 80000hz.com freeswitch 使用mysql替换默认的sqlite No Reply , Posted in 默认分类 on January 14, 2014 目标使用mysql ...

  7. ORACLE 利用 REPLACE函数替换字段字符串

    REPLACE(string,s1,s2) string 希望被替换的字符或变量 s1 被替换的字符串 s2 要替换的字符串 SQL> select replace(he love you,he ...

  8. [No0000A4]DOS命令(cmd)批处理:替换字符串、截取字符串、扩充字符串、获取字符串长度

    1.替换字符串,即将某一字符串中的特定字符或字符串替换为给定的字符串.举例说明其功能:========================================= @echo off set a ...

  9. 如何把select默认的小三角替换成自己的图片

    不同的浏览器默认的select的选项图标是不同的,例如: 在chrome中,是这样的: 未点击时    点击时  在Firefox中是这样的: 未点击时  点击时   在IE9中是这样的: 未点击时  ...

  10. C#将WebBowser控件替换为Chrome内核

    摘要 由于最近要做一个浏览器式的软件,其中有不少地方需要使用到jQuery和BootStrap,但是在C#中,默认的WebBrowser控件默认使用的是IE的core,而低版本的IE在JS加载上总是容 ...

随机推荐

  1. GBK编码和UTF-8编码互转的大坑

    这几天遇到一个BUG,问题很简单,解决却花了3.4天,特意记录下来. linux环境下,将默认编码设置为GBK以后,运行GBK编码的脚本,调用一个Java的jar包,然后总jar包中返回GBK字符串. ...

  2. MM32看门狗学习(兼容STM32)

    MM32看门狗学习(兼容STM32) IWDG独立看门狗 思维导图 IWDG框图与理解 1.独立看门狗分为两个部分,配置寄存器在1.8V供电区,计数器的核心部分在VDD供电区(即使停机/待机模式计数器 ...

  3. C# 在右下角弹出窗口

    窗口代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Da ...

  4. 通过URL推送POST数据

    由于到了一家新公司重新开始接触MVC和其他的一些东西.所以的重新拾起许多东西. 前一段时间让我写一个和第三方公司推送对接的方法.通过对方提供的URL把数据post推送出去. 我把url到了web.co ...

  5. javascript高级特性(面向对象)

    javascript高级特性(面向对象): * 面向对象: * 面向对象和面向过程的区别: * 面向对象:人就是对象,年龄\性别就是属性,出生\上学\结婚就是方法. * 面向过程:人出生.上学.工作. ...

  6. HTML5与APP的交互

    phonegap框架,html5直接用于移动开发的框架.现版本UI延迟据说还是略大. App中搞活动,每次都通过mobile api把url给app即可. App操作Html webview.load ...

  7. Android Studio Gradle 版本不同报错解决方法

    由于GFW的原因,我们在使用as时经常出现失败,或者第一次新建工程不成功. 很多博客上已经提到了如何解决第一次新建工程Gradle构建的问题,那么在打开别的工程时依旧会报错 "Failed ...

  8. JavaScript 超类与子类 继承

    //超类和子类 继承的实现 function R(w, h) { var date = new Date(); this.width = w; this.height = h; this.create ...

  9. 总结:如何获取同一个DIV里的多个不同子标签的值,并赋值给input?

    这个问题说起来简单,但对于新手来说,也着实卡了好久,并且我在网上搜了好久没能找到合适的答案, 于是去博问问了一下,得到许多大神们的帮助与回答,接下来我就总结一下能够实现这个效果的几种方法,既为了自己更 ...

  10. union关键字 与大小端模式

    union 关键字(主要用来压缩空间,如果一些数据不可能同一时间同时用到,可是考虑使用union) union关键字声明的变量称之为联合体变量: (1)联合体变量只配置一个足够大的空间来容纳最大长度的 ...