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 相关文章推荐
亲密接触PHP之PHP语法学习笔记1
Dec 17 PHP
php 进度条实现代码
Mar 10 PHP
Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码
Apr 07 PHP
php常用Output和ptions/Info函数集介绍
Jun 19 PHP
php 启动时报错的简单解决方法
Jan 27 PHP
php获取url参数方法总结
Nov 13 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
PHP生成plist数据的方法
Jun 16 PHP
CodeIgniter配置之database.php用法实例分析
Jan 20 PHP
thinkPHP框架可添加js事件的分页类customPage.class.php完整实例
Mar 16 PHP
PHP常用的类封装小结【4个工具类】
Jun 28 PHP
thinkphp 获取控制器及控制器方法
Apr 16 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中的session永不过期的解决思路及实现方法分享
2011/04/20 PHP
利用PHP+JS实现搜索自动提示(实例)
2013/06/09 PHP
php实现httpclient类示例
2014/04/08 PHP
php查询相似度最高的字符串的方法
2015/03/12 PHP
PHP后台微信支付和支付宝支付开发
2017/04/28 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
理解Javascript_14_函数形式参数与arguments
2010/10/20 Javascript
全面理解面向对象的 JavaScript(来自ibm)
2013/11/10 Javascript
玩转方法:call和apply
2014/05/08 Javascript
JS操作JSON方法总结(推荐)
2016/06/14 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
AutoJs实现刷宝短视频的思路详解
2020/05/22 Javascript
antd-日历组件,前后禁止选择,只能选中间一部分的实例
2020/10/29 Javascript
python批量导出导入MySQL用户的方法
2013/11/15 Python
详解使用python crontab设置linux定时任务
2016/12/08 Python
使用DataFrame删除行和列的实例讲解
2018/04/08 Python
详谈套接字中SO_REUSEPORT和SO_REUSEADDR的区别
2018/04/28 Python
解决python3运行selenium下HTMLTestRunner报错的问题
2018/12/27 Python
Python中base64与xml取值结合问题
2019/12/22 Python
Python3爬虫中识别图形验证码的实例讲解
2020/07/30 Python
python爬虫使用requests发送post请求示例详解
2020/08/05 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
vue.js刷新当前页面的实例讲解
2020/12/29 Python
CSS3+font字体文件实现圆形半透明菜单具体步骤(图解)
2013/06/03 HTML / CSS
分享一个H5原生form表单的checkbox特效代码
2018/02/26 HTML / CSS
Clarins娇韵诗美国官网:法国天然护肤品牌
2016/09/26 全球购物
Sarenza德国:法国最大的时尚鞋和包包网上商店
2019/06/08 全球购物
网上常见的一份Linux面试题(多项选择部分)
2014/09/09 面试题
京剧自荐信
2014/01/26 职场文书
生物科学专业职业规划书范文
2014/02/11 职场文书
《母亲的恩情》教学反思
2014/02/13 职场文书
信访工作经验交流材料
2014/05/23 职场文书
2015年统战工作总结
2015/05/19 职场文书
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
python中pd.cut()与pd.qcut()的对比及示例
2022/06/16 Python