php正则提取html图片(img)src地址与任意属性的方法


Posted in PHP onFebruary 08, 2017

简单版:

<?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="//img.jbzj.com/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(!empty($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);
?>

以上这篇php正则提取html图片(img)src地址与任意属性的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
搜索和替换文件或目录的一个好类--很实用
Oct 09 PHP
MySQL数据源表结构图示
Jun 05 PHP
使用php+Ajax实现唯一校验实现代码[简单应用]
Nov 29 PHP
解析php5配置使用pdo
Jul 03 PHP
开源php中文分词系统SCWS安装和使用实例
Apr 11 PHP
php格式化金额函数分享
Feb 02 PHP
php支付宝手机网页支付类实例
Mar 04 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
Mar 12 PHP
php利用事务处理转账问题
Apr 22 PHP
PHP错误和异常处理功能模块示例
Nov 12 PHP
Laravel框架实现多数据库连接操作详解
Jul 12 PHP
PHP PDO和消息队列的个人理解与应用实例分析
Nov 25 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
Feb 08 #PHP
php利用嵌套数组拼接与解析json的方法
Feb 07 #PHP
php获取文件名称和扩展名的方法
Feb 07 #PHP
php 常用的系统函数
Feb 07 #PHP
thinkphp修改配置进入默认首页的方法
Feb 07 #PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
Feb 07 #PHP
PHP封装的多文件上传类实例与用法详解
Feb 07 #PHP
You might like
PHP+jQuery实现自动补全功能源码
2013/05/15 PHP
location.search在客户端获取Url参数的方法
2010/06/08 Javascript
JS控件ASP.NET的treeview控件全选或者取消(示例代码)
2013/12/16 Javascript
jQuery中toggleClass()方法用法实例
2015/01/05 Javascript
AngularJS基础 ng-srcset 指令简单示例
2016/08/03 Javascript
bootstrap fileinput 上传插件的基础使用
2017/02/17 Javascript
JavaScript 日期时间选择器一些小结
2018/04/02 Javascript
vue-cli脚手架的安装教程图解
2018/09/02 Javascript
JS实现可视化文件上传
2018/09/08 Javascript
Vue2.x通用编辑组件的封装及应用详解
2019/05/28 Javascript
微信小程序实现点击导航条切换页面
2020/11/19 Javascript
python中使用enumerate函数遍历元素实例
2014/06/16 Python
学习python之编写简单乘法口诀表实现代码
2016/02/27 Python
Python图片裁剪实例代码(如头像裁剪)
2017/06/21 Python
python验证码识别的示例代码
2017/09/21 Python
python实现csv格式文件转为asc格式文件的方法
2018/03/23 Python
pandas DataFrame数据转为list的方法
2018/04/11 Python
Python面向对象程序设计之私有属性及私有方法示例
2019/04/08 Python
Python3.8对可迭代解包的改进及用法详解
2019/10/15 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
keras中的backend.clip用法
2020/05/22 Python
CSS3实现圆角、阴影、透明效果并兼容各大浏览器
2014/08/08 HTML / CSS
突破canvas语法限制 让他支持链式语法
2012/12/24 HTML / CSS
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
2014/09/09 面试题
会计实习期自我鉴定
2013/10/06 职场文书
新闻专业本科生的自我评价分享
2013/11/20 职场文书
个人自我鉴定写法
2013/11/30 职场文书
车间主任岗位职责
2014/03/16 职场文书
读书月活动方案
2014/05/22 职场文书
国家领导干部党的群众路线教育实践活动批评与自我批评材料
2014/09/23 职场文书
2015年售票员工作总结
2015/04/29 职场文书
公司劳动纪律管理制度
2015/08/04 职场文书
2016领导干部廉洁从政心得体会
2016/01/19 职场文书
2016年大学生党员承诺书
2016/03/24 职场文书
redis通过6379端口无法连接服务器(redis-server.exe闪退)
2021/05/08 Redis
vue自定义右键菜单之全局实现
2022/04/09 Vue.js