替换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加载上总是容 ...
随机推荐
- C# 面向对象 , 继承
继承 class A { Console.WriteLine("hello world"); } class B:A { } 以上书写,表示B 是A 的子类, B 同时继承A 中 ...
- python运行时间计算之timeit
timeit.timeit(stmt='pass', setup='pass', timer=<default timer>, number=1000000) stmt:statement ...
- spring-qualifier解释
如果一个class有两个对应的beanId,在Autowired的时候,必须指定Qualifier("指定其中一个beanId"). org.springframework.bea ...
- PHP Date/Time 函数
Runtime 配置 Date/Time 函数的行为受到 php.ini 中设置的影响: 名称 描述 默认 PHP 版本 date.timezone 规定默认时区(所有的 Date/Time 函数使用 ...
- 武汉科技大学ACM:1010: 电话号码
Problem Description LXD打算换个手机号码,但是他去营业厅选号码的时候却把移动的客服小姐烦得不行,因为他太挑三捡四啦.对于一个手机号的后六位数字(前面五位他就无所谓了),LXD有很 ...
- 你好,C++(23) 4.4.2 工资程序成长记:用数组处理批量数据,用循环结构执行重复动作
4.4 从语句到程序 了解了各种表达式和语句之后,就相当于掌握了写作文要用到的词语和句子,但是,仅有词语和句子是无法构成一篇有意义的文章的.要完成一篇文章,先需要确定这篇文章的结构,是先分述再总述, ...
- 你好,C++(17)0.1*10不等于1.0——4.1.4 关系操作符4.1.5 逻辑操作符
4.1.4 关系操作符 在C++中,除了需要用算术操作符对数据进行加减乘除的算术操作之外,我们有时候还需要对数据之间的关系进行操作,也就是对两个数据进行大小比较,得出它们之间的大小关系.在现实世界中 ...
- java学习笔记 (9) —— Struts2 国际化
1.Test.java package com.i18n; import java.util.Locale; public class Test1 { public static void main( ...
- vs code(egret wing) php配置与调试
所需插件 下面是便于编写以及调试php的插件,可以从IDE Store中搜索. PHP Debug,PHP IntelliSense,PHP IntelliSence Cranne. 环境配置 找到项 ...
- 文件夹Tab Ctrl
http://blog.163.com/gz_ricky/blog/static/1820491182011061180897/ 转载 Tab Ctrl Tab属性页控件可以在一个窗口中添加不同的页面 ...