分享

PHP正则提取或替换img标记属性

 昵称3884271 2014-01-08

PHP 正则表达式匹配 img ,PHP 正则提取或替换图片 img 标记中的任意属性。

标签: 正则 采集

代码片段(1) [全屏查看所有代码]

1. [代码][PHP]代码     跳至 [1] [全屏预览]

01<?php
02 
03/*PHP正则提取图片img标记中的任意属性*/
04$str = '<center><img src="/uploads/images/20100516000.jpg" height="120" width="120"><br />PHP正则提取或更改图片img标记中的任意属性</center>';
05 
06//1、取整个图片代码
07preg_match('/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i',$str,$match);
08echo $match[0];
09 
10//2、取width
11preg_match('/<img.+(width=\"?\d*\"?).+>/i',$str,$match);
12echo $match[1];
13 
14//3、取height
15preg_match('/<img.+(height=\"?\d*\"?).+>/i',$str,$match);
16echo $match[1];
17 
18//4、取src
19preg_match('/<img.+src=\"?(.+\.(jpg|gif|bmp|bnp|png))\"?.+>/i',$str,$match);
20echo $match[1];
21 
22/*PHP正则替换图片img标记中的任意属性*/
23//1、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg")
24print preg_replace('/(<img.+src=\"?.+)(images\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/i',"\${1}uc/images/\${3}",$str);
25echo "<hr/>";
26 
27//2、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.jpg",并省去宽和高
28print preg_replace('/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i',"\${1} \${2}uc/images/\${3}>",$str);
29 
30?>

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多