替换IMG
<?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的更多相关文章
- Shell替换
如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. #!/bin/bash a= echo -e "Value of a is ...
- ContentProvider域名替换小工具
开发项目域名想怎么换就怎么换,就是这么任性! 这是一个很有意思的小工具! 这是一个方便开发人员和测试人员的小工具!! 吐槽: 一直在做Android开发,一直总有一个问题存在:做自己公司的apk开发时 ...
- 偷天换日:网络劫持,网页js被伪装替换。
偷天换日 3月12号石家庄一个客户(后面简称乙方)有几家门店,平台收银(web)有一些功能无法正常使用,平台有上千家门店在使用,到目前为止别的省份都没有此问题.远程协助发现,js日期控件无法正常调用, ...
- 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 ...
- vim 中替换
将80替换为10.0.0.19:80 :g/80/s//10.0.0.19:80/g
- freeswitch 使用mysql替换默认的sqlite
转自 80000hz.com freeswitch 使用mysql替换默认的sqlite No Reply , Posted in 默认分类 on January 14, 2014 目标使用mysql ...
- ORACLE 利用 REPLACE函数替换字段字符串
REPLACE(string,s1,s2) string 希望被替换的字符或变量 s1 被替换的字符串 s2 要替换的字符串 SQL> select replace(he love you,he ...
- [No0000A4]DOS命令(cmd)批处理:替换字符串、截取字符串、扩充字符串、获取字符串长度
1.替换字符串,即将某一字符串中的特定字符或字符串替换为给定的字符串.举例说明其功能:========================================= @echo off set a ...
- 如何把select默认的小三角替换成自己的图片
不同的浏览器默认的select的选项图标是不同的,例如: 在chrome中,是这样的: 未点击时 点击时 在Firefox中是这样的: 未点击时 点击时 在IE9中是这样的: 未点击时 ...
- C#将WebBowser控件替换为Chrome内核
摘要 由于最近要做一个浏览器式的软件,其中有不少地方需要使用到jQuery和BootStrap,但是在C#中,默认的WebBrowser控件默认使用的是IE的core,而低版本的IE在JS加载上总是容 ...
随机推荐
- Html.RenderPartial和Html.RenderAction的区别
添加一个PartialController控制器 using System; using System.Collections.Generic; using System.Linq; using Sy ...
- ZOJ3161
朴素动态规划 ZOJ3161 题意:(严重标题党)老板不想让客人走,客人不想留,客人按顺序排好,老板抽8g(书上翻译成八卦,神翻译),抽到的 如果相邻,其中一个人由客人决定离开,求最后黑心的老板最多能 ...
- spring源码测试
org.springframework.context.annotation.ComponentScanParserTests.componentScanWithAutowiredQualifier( ...
- activeMQ总结
队列模式和发布订阅模式的区别 topic只有所有订阅者都消费了,这个消息才会消失.只要有一个订阅者没有消费(持久化模式),这个消息就会存在.订阅者下线然后上线也会读取到这个消息.而且队列的话,消费能力 ...
- Arcgis Android - HelloWorld
概述 虽然esri官网上最新版本是10.2.4,但是例子中实在是很难运行,总是出现各种各样的bug.又因为初学是Android,所以不想太浪费时间弄些配置了.决定先将v2.0.0的Arcgis for ...
- C#操作Office- Cannot find the interop type that matches the embedded interop type 'Microsoft.Office.Interop.Excel.Application'
网上说 2003 -> 11.0, 2007 -> 12.0. 因为平时提示"Are you missing an assembly reference?",都是没有引 ...
- StrokeStart与StrokeEnd动画
通过修改CAShapeLayer的StrokeStart与StrokeEnd的值来实现画图动画 效果图: 代码部分: #import "ViewController.h" @int ...
- C#结课报告
Revision History Date Issue Description Author 18/May/2015 v1.0 Initial creation 邓彪翼 模拟图书馆的查询系统 1.ob ...
- XML Schema (1)
XML Schema 是基于 XML 的 DTD 替代者. XML Schema 描述 XML 文档的结构. XML Schema 语言也称作 XML Schema 定义(XML Schema Def ...
- 2013多校联合2 I Warm up 2(hdu 4619)
Warm up 2 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total ...