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 zend 相对路径问题
Jan 12 PHP
php 网页游戏开发入门教程一(webgame+design)
Oct 26 PHP
php addslashes及其他清除空格的方法是不安全的
Jan 25 PHP
php中防止SQL注入的最佳解决方法
Apr 25 PHP
解析PHP中如何将数组变量写入文件
Jun 06 PHP
PHP变量内存分配问题记录整理
Nov 27 PHP
destoon调用企业会员公司形象图片的实现方法
Aug 21 PHP
php中session定期自动清理的方法
Nov 12 PHP
WordPress中获取页面链接和标题的相关PHP函数用法解析
Dec 17 PHP
PHP设置Cookie的HTTPONLY属性方法
Feb 09 PHP
php 中self,this的区别和操作方法实例分析
Nov 04 PHP
YII2框架中日志的配置与使用方法实例分析
Mar 18 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面向对象程序设计组合模式与装饰模式详解
2016/12/02 PHP
Javascript 函数中的参数使用分析
2010/03/27 Javascript
javascript工具库代码
2012/03/29 Javascript
JavaScript打开word文档的实现代码(c#)
2012/04/16 Javascript
js计算字符串长度包含的中文是utf8格式
2013/10/15 Javascript
js形成页面的一种遮罩效果实例代码
2014/01/04 Javascript
分离与继承的思想实现图片上传后的预览功能:ImageUploadView
2016/04/07 Javascript
vue的props实现子组件随父组件一起变化
2016/10/27 Javascript
Element-UI踩坑之Pagination组件的使用
2018/10/29 Javascript
jquery+css实现Tab栏切换的代码实例
2019/05/14 jQuery
详解Vuex下Store的模块化拆分实践
2019/07/31 Javascript
详解为什么Vue中的v-if和v-for不建议一起用
2021/01/13 Vue.js
[50:38]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第二场 3月7日
2021/03/11 DOTA
Python读写Excel文件方法介绍
2014/11/22 Python
Python中最常用的操作列表的几种方法归纳
2015/04/24 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
python3实现TCP协议的简单服务器和客户端案例(分享)
2017/06/14 Python
Python爬取当当、京东、亚马逊图书信息代码实例
2017/12/09 Python
python使用Pycharm创建一个Django项目
2018/03/05 Python
python中从str中提取元素到list以及将list转换为str的方法
2018/06/26 Python
实例讲解Python脚本成为Windows中运行的exe文件
2019/01/24 Python
python实现批量注册网站用户的示例
2019/02/22 Python
在python中实现调用可执行文件.exe的3种方法
2019/07/07 Python
Python实现蒙特卡洛算法小实验过程详解
2019/07/12 Python
Django框架静态文件使用/中间件/禁用ip功能实例详解
2019/07/22 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
2020/04/16 Python
浅谈python多线程和多线程变量共享问题介绍
2020/04/17 Python
Vilebrequin美国官方网上商店:法国豪华泳装品牌
2020/02/22 全球购物
新浪网技术部笔试题
2016/08/26 面试题
描述RIP和OSPF区别以及特点
2015/01/17 面试题
2015年敬老月活动总结
2015/03/27 职场文书
军训通讯稿范文
2015/07/18 职场文书
联村联户简报
2015/07/21 职场文书
基于Golang 高并发问题的解决方案
2021/05/08 Golang
Javascript设计模式之原型模式详细
2021/10/05 Javascript