php中使用preg_match_all匹配文章中的图片


Posted in PHP onFebruary 06, 2013

preg_match_all 函数:

int preg_match_all ( string pattern, string subject, array matches [, int flags] )执行一个全局正则表达式匹配
在 subject 中搜索所有与 pattern 给出的正则表达式匹配的内容并将结果以 flags 指定的顺序放到 matches 中。    
搜索到第一个匹配项之后,接下来的搜索从上一个匹配项末尾开始。  
flags 可以是下列标记的组合(注意把 PREG_PATTERN_ORDER 和 PREG_SET_ORDER 合起来用没有意义): 
PREG_PATTERN_ORDER  对结果排序使 $matches[0] 为全部模式匹配的数组,$matches[1] 为第一个括号中的子模式所匹配的字符串组成的数组,以此类推!

例子:

<?php
$con = file_get_contents("https://3water.com/news/jb-1.html");
$pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/";
preg_match_all($pattern,$con,$match);
print_r($match);
?>

结果:

Array
(
    [0] => Array
        (
            [0] => <img src="https://3water.com/usr/themes/dddefault/images/logo.png" alt="脚本学堂" />
            [1] => <img style="display: block; margin-left: auto; margin-right: auto;" title="脚本学堂上线了" src="https://3water.com/usr/uploads/2012/09/531656480.jpg" alt="脚本学堂上线了2" />
            [2] => <img style="display: block; margin-left: auto; margin-right: auto;" src="https://3water.com/usr/uploads/2012/09/2647136297.jpg" alt="875EA1C00E50B4542797E24FA6E7E1F2.jpg" />
        )
    [1] => Array
        (
            [0] => https://3water.com/usr/themes/dddefault/images/logo.png
            [1] => https://3water.com/usr/uploads/2012/09/531656480.jpg
            [2] => https://3water.com/usr/uploads/2012/09/2647136297.jpg
        )
)
PHP 相关文章推荐
生成静态页面的PHP类
Jul 15 PHP
新版PHP将向Java靠拢
Oct 09 PHP
PHP4实际应用经验篇(5)
Oct 09 PHP
第三节--定义一个类
Nov 16 PHP
php MySQL与分页效率
Jun 04 PHP
phpMyAdmin 安装及问题总结
May 28 PHP
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
Sep 30 PHP
php使用ob_flush不能每隔一秒输出原理分析
Jun 02 PHP
Smarty实现页面静态化(生成HTML)的方法
May 23 PHP
再谈PHP中单双引号的区别详解
Jun 12 PHP
PHP读取zip文件的方法示例
Nov 17 PHP
php接口技术实例详解
Dec 07 PHP
php中使用addslashes函数报错问题的解决方法
Feb 06 #PHP
深入理解ob_flush和flush的区别(ob_flush()与flush()使用方法)
Feb 06 #PHP
php中设置index.php文件为只读的方法
Feb 06 #PHP
php中选择什么接口(mysql、mysqli)访问mysql
Feb 06 #PHP
php连接mssql的一些相关经验及注意事项
Feb 05 #PHP
用php随机生成福彩双色球号码的2种方法
Feb 04 #PHP
php获取服务器信息的实现代码
Feb 04 #PHP
You might like
在“咖啡之国”感受咖啡文化
2021/03/03 咖啡文化
smarty中常用方法实例总结
2015/08/07 PHP
使用Git实现Laravel项目的自动化部署
2019/11/24 PHP
Web 前端设计模式--Dom重构 提高显示性能
2010/10/22 Javascript
JavaScript检查某个function是否是原生代码的方法
2014/08/20 Javascript
JavaScript程序中实现继承特性的方式总结
2016/06/24 Javascript
前端程序员必须知道的高性能Javascript知识
2016/08/24 Javascript
详解AngularJS中的表单验证(推荐)
2016/11/17 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
在vscode中统一vue编码风格的方法
2018/02/22 Javascript
11行JS代码制作二维码生成功能
2018/03/09 Javascript
webpack打包node.js后端项目的方法
2018/03/10 Javascript
JS实现table表格内针对某列内容进行即时搜索筛选功能
2018/05/11 Javascript
新手快速上手webpack4打包工具的使用详解
2019/01/28 Javascript
微信小程序实现点击卡片 翻转效果
2019/09/04 Javascript
vuex实现购物车的增加减少移除
2020/06/28 Javascript
详解vue 组件的实现原理
2020/11/12 Javascript
[56:24]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#1Liquid VS MVP.Phx第二局
2016/03/04 DOTA
Python函数式编程指南(四):生成器详解
2015/06/24 Python
浅谈Python中chr、unichr、ord字符函数之间的对比
2016/06/16 Python
基于Python中isfile函数和isdir函数使用详解
2019/11/29 Python
使用Python测试Ping主机IP和某端口是否开放的实例
2019/12/17 Python
python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式
2020/05/16 Python
详解python中的闭包
2020/09/07 Python
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
荷兰领先的百货商店:De Bijenkorf
2018/10/17 全球购物
New delete 与malloc free 的联系与区别
2013/02/04 面试题
CSMA/CD介质访问控制协议
2015/11/17 面试题
社区八一活动方案
2014/02/03 职场文书
会计演讲稿范文
2014/05/23 职场文书
表扬稿格式范文
2015/01/16 职场文书
幼儿园感谢信
2015/01/21 职场文书
2015年双拥工作总结
2015/04/08 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
2016年教育局“我们的节日——端午节”主题活动总结
2016/04/01 职场文书
PO模式在selenium自动化测试框架的优势
2022/03/20 Python