问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php正则表达式替换图片地址

发布网友 发布时间:2022-04-28 05:40

我来回答

2个回答

懂视网 时间:2022-04-28 10:01

php正则表达式替换图片地址的方法:首先PHP正则提取图片img标记中的任意属性;然后提取width、height、src;最后PHP正则替换图片img标记中的任意属性。

php正则表达式替换图片地址的方法:

<?php
/*PHP正则提取图片img标记中的任意属性*/
$str = '<center><img src="/uploads/images/20100516000.jpg" height="120" width="120"><br />PHP正则提取或更改图片img标记中的任意属性</center>';
//1、取整个图片代码
preg_match('/<s*imgs+[^>]*?srcs*=s*('|")(.*?)1[^>]*?/?s*>/i',$str,$match);
echo $match[0];
//2、取width
preg_match('/<img.+(width="?d*"?).+>/i',$str,$match);
echo $match[1];
//3、取height
preg_match('/<img.+(height="?d*"?).+>/i',$str,$match);
echo $match[1];
//4、取src
preg_match('/<img.+src="?(.+.(jpg|gif|bmp|bnp|png))"?.+>/i',$str,$match);
echo $match[1];
/*PHP正则替换图片img标记中的任意属性*/
//1、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg")
print preg_replace('/(<img.+src="?.+)(images/)(.+.(jpg|gif|bmp|bnp|png)"?.+>)/i',"${1}uc/images/${3}",$str);
echo "<hr/>";
//2、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg",并省去宽和高
print preg_replace('/(<img).+(src="?.+)images/(.+.(jpg|gif|bmp|bnp|png)"?).+>/i',"${1} ${2}uc/images/${3}>",$str);
?>

相关学习推荐:php编程(视频)

热心网友 时间:2022-04-28 07:09

<?php
/*PHP正则提取图片img标记中的任意属性*/
$str
=
'<center><img
src="/uploads/images/20100516000.jpg"
height="120"
width="120"><br
/>PHP正则提取或更改图片img标记中的任意属性</center>';
//1、取整个图片代码
preg_match('/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i',$str,$match);
echo
$match[0];
//2、取width
preg_match('/<img.+(width=\"?\d*\"?).+>/i',$str,$match);
echo
$match[1];
//3、取height
preg_match('/<img.+(height=\"?\d*\"?).+>/i',$str,$match);
echo
$match[1];
//4、取src
preg_match('/<img.+src=\"?(.+\.(jpg|gif|bmp|bnp|png))\"?.+>/i',$str,$match);
echo
$match[1];
/*PHP正则替换图片img标记中的任意属性*/
//1、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg")
print
preg_replace('/(<img.+src=\"?.+)(images\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/i',"\${1}uc/images/\${3}",$str);
echo
"<hr/>";
//2、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg",并省去宽和高
print
preg_replace('/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i',"\${1}
\${2}uc/images/\${3}>",$str);
?>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...DE分别在BC AC上,且AE=CD,连接AD,BE交于点p 过B作BQ⊥AD Q为垂足... ...AC上的点,且AE=CD 连接AD BE 交于点P 作BQ垂 ...ac上的点,且ae=cd,连接ad、be交于点p作BQ⊥AD,垂足为Q,求证BP=2... ...AC上的点,且AE=CD,链接AD、BE交于点P,作BQ⊥AD ...AC上的点,且AE=CD,连结AD、BE交于点P,作BQ⊥AD,垂足为Q. ...刚刚大学毕业。由于生病,导致目前没有工作,大学四年的女友也因为我... 形容“荷花的特点”有什么词语 梦见比人还高大的石头蛤蟆,杀人拆房子。我和其他人一起翘辫子了._百度... 梦见别人送我一条蛇,我却把他不小心放了.可是我用石头打了它一下... 作文 我生活在鼓励中 如何关闭php安全模式? 想请教各位,如何学习PHP,求具体学习步骤?越详细越好,求PHP高人指点?不胜感激。。 500分!DREAMHOST 如何自己配置PHP.INI? 如何开启(关闭)PHP的iconv模块 怎么关闭phpstorm的注释 怎样关闭PHP服务? 求解这段PHP代码是什么意思,作用是什么 [php学习]请教1个魔术引号修正函数 PHP:什么是魔术引号 怎样打开“魔术引号(Magic Quote)GPC” 跪求各位php高手,为什么不能判断用户名重复,不知道哪里错了?? php+mysql注册时用户名不能相同的代码 用php写网站时,用txt存用户名,如何解决多个用户同时登录和注册问题 如何用php实现一个账号不能多个用户同时登陆? 如何用php实现一个账号不能多个用户同时登陆 怎样防止一个用户名重复登陆,该如何处理 php+js如何判断用户名不能重复注册 谁有 php 注册防重复的 源码 可以借给我借鉴一下!!或者思路也可以! php对注册用户名的限制代码怎么写? 请问php防止一个用户重复登录的问题 如何用正则表达式修改图片路径? 请问怎样用php 正则表达式取设置宽和高的[img][&#47;img]标签里面的图片地址 求php中正则表达式过滤或者替换掉特定图片路径的图片 php如何使用正则表达式匹配url图片啊 php用正则表达式替换img中src的路径。 求教php正则高手。php正则获取html内容中的所有img路径及名称,替换img的路径 php 如何用正则表达式修改图片地址 我想用正则表达式去替换一个图片路径,但要保持图片名称跟替换前一样的,要怎么写怎么写才能达到这个效果 php 正则表达式怎么把图片URL匹配出来呢? php如何用正则表达式抓取网页中的图片地址? 请问PHP里怎么用正则表达式给HTML代码里的所有图片加上本身的链接 求php中正则表达式从html代码中获取图片路径 求一段php里替换图片尺寸的正则表达式 深圳magento建站教您如何去掉域名后面index.php.html 安装Magento时自动跳转到/index.php/install/怎么解决 php空间如何安装zend php获取表中所有查询出来的结果数据 PHP怎么获取mysql迭代查询的数据。 PHP抓取四六级查询结果 在PHP中使用SQL语句 怎么取出查询出来的最后一个数据?