php正则提取html图片(img)src地址与任意属性的方法
发布:smiling 来源: PHP粉丝网 添加日期:2018-07-31 11:39:57 浏览: 评论:0
简单版:
- <?php
- header("Content-Type: text/html;charset=utf-8");
- $str = '<div class="ui-block-a" align="center">
- <a href="online-39.html" rel="external nofollow" ><img class="lazy" width="131" height="177" src="http://files.jb51.net/file_images/game/201702/2017020716154162.jpg"/>
- <h3>2014年</h3></a>
- </div>';
- $imgpreg = "/<img (.*?) src=\"(.+?)\".*?>/";
- preg_match($imgpreg,$str,$img);
- $mycount=count($img)-1;
- $imgval = $iim[$mycount];
- if(!emptyempty($imgval)){
- echo $imgval;
- }else{
- echo 'no';
- }
- ?>
详细版:
- <?php
- /*PHP正则提取图片img标记中的任意属性*/
- $str = '<center><img src="/uploads/images/2017020716154162.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/2017020716154162.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/2017020716154162.jpg",并省去宽和高
- print preg_replace('/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i',"\${1} \${2}uc/images/\${3}>",$str);
- ?>
Tags: 正则 属性 地址
相关文章
- ·php正则连接中文本程序(2013-11-12)
- ·PHP常用正则表达式汇总(2013-11-13)
- ·三分钟学会PHP正则表达式(2013-11-13)
- ·巧用PHP正则表达式判断IP地址(2013-11-13)
- ·如何用正则表达式来表示中文?(2013-11-27)
- ·php正则匹配gb2312和utf-8中文(2013-11-29)
- ·PHP字符串正则替换函数preg_replace(2013-11-29)
- ·php正则表达匹配中文问题分析(2013-11-30)
- ·preg_match正则匹配提示pcre.backtrack_limit(2013-12-02)
- ·常用的php正则表达式收集(2013-12-03)
- ·preg_match正则匹配的字符串(2013-12-03)
- ·日期验证正则表达式(2013-12-11)
- ·php用户注册时常用的一些检验函数总结(2014-01-05)
- ·php正则表达式验证邮箱(2014-01-05)
- ·php/js汉字正则表达式总结(2014-01-05)
- ·php中正则匹配用户密码(2014-01-06)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)