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 相关文章推荐
实现 win2003 下 mysql 数据库每天自动备份
Dec 06 PHP
PHP实时显示输出
Oct 02 PHP
PHP注释实例技巧
Oct 03 PHP
php输出表格的实现代码(修正版)
Dec 29 PHP
php实现telnet功能示例
Apr 08 PHP
php通过baihui网API实现读取word文档并展示
Jun 22 PHP
PHP基于单例模式实现的mysql类
Jan 09 PHP
详解PHP swoole process的使用方法
Aug 26 PHP
php基于 swoole 实现的异步处理任务功能示例
Aug 13 PHP
在thinkphp5.0路径中实现去除index.php的方式
Oct 16 PHP
PHP如何开启Opcache功能提升程序处理效率
Apr 27 PHP
如何使用php生成zip压缩包
Apr 21 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中理解print EOT分界符和echo EOT的用法区别小结
2010/02/21 PHP
php在文件指定行中写入代码的方法
2012/05/23 PHP
php简单统计字符串单词数量的方法
2015/06/19 PHP
thinkphp5 模型实例化获得数据对象的教程
2019/10/18 PHP
JavaScript计算字符串中每个字符出现次数的小例子
2013/07/02 Javascript
javascript实现简单的省市区三级联动
2015/05/14 Javascript
学习AngularJs:Directive指令用法(完整版)
2016/04/26 Javascript
JQuery点击行tr实现checkBox选中的简单实例
2016/05/26 Javascript
浅谈JavaScript事件绑定的常用方法及其优缺点分析
2016/11/01 Javascript
Jquery与Bootstrap实现后台管理页面增删改查功能示例
2017/01/22 Javascript
vue.js中使用echarts实现数据动态刷新功能
2019/04/16 Javascript
vue控制多行文字展开收起的实现示例
2019/10/11 Javascript
解决包含在label标签下的checkbox在ie8及以下版本点击事件无效果兼容的问题
2019/10/27 Javascript
python 快速排序代码
2009/11/23 Python
Python中的字典遍历备忘
2015/01/17 Python
Python实现的异步代理爬虫及代理池
2017/03/17 Python
Python之列表的插入&amp;替换修改方法
2018/06/28 Python
在python 不同时区之间的差值与转换方法
2019/01/14 Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
2019/08/23 Python
selenium+PhantomJS爬取豆瓣读书
2019/08/26 Python
详解Python绘图Turtle库
2019/10/12 Python
Python3 requests模块如何模仿浏览器及代理
2020/06/15 Python
python3将变量输入的简单实例
2020/08/19 Python
使用 HTML5 Canvas 制作水波纹效果点击图片就会触发
2014/09/15 HTML / CSS
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2015/09/07 面试题
Ajxa常见问题都有哪些
2014/03/26 面试题
大学生演讲稿范文
2014/01/11 职场文书
有关打架的检讨书
2014/01/25 职场文书
2014年开学第一课活动方案
2014/03/06 职场文书
《高尔基和他的儿子》教学反思
2014/04/09 职场文书
《傅雷家书》教学反思
2014/04/20 职场文书
村干部任职承诺书
2015/01/21 职场文书
绍兴鲁迅故居导游词
2015/02/09 职场文书
2016元旦晚会主持人开场白和结束语
2015/12/03 职场文书
初一数学教学反思
2016/02/17 职场文书
关于React Native 无法链接模拟器的问题
2021/06/21 Javascript