PHP正则匹配img及标签各属性值(匹配图片函数)

 代码如下 复制代码

<?php

 
$ext = 'jpg|jpeg|gif|bmp|png';//罗列图片后缀从而实现多扩展名匹配
$str = '<p><img title="湛蓝天空" alt="湛蓝天空" onload="ResizeImage(this,860)" src="http://你的域名/uploads/allimg/131121/1-1311210925190-L.jpg" /></p><p><img title="湛蓝天空" alt="湛蓝天空" onload="ResizeImage(this,860)" src="http://你的域名/uploads/allimg/130814/1-130Q42211190-L.jpg" /></p><p><img title="湛蓝天空" alt="湛蓝天空" onload="ResizeImage(this,860)" src="http://你的域名/uploads/allimg/130923/1-130923233I30-L.jpg" /></p>';
 
 
$img_list = array(); //这里存放结果map
$img_list = img_match($str,$ext);
print_r($img_list); //查看结果变量
 
/*
* $str,要进行处理的内容
* $ext,要匹配的扩展名
*/
 
function img_match($str,$ext){
 
$list = array(); //这里存放结果map
$c1 = preg_match_all('/<imgs.*?>/', $str, $m1); //先取出所有img标签文本
for($i=0; $i<$c1; $i++) {    //对所有的img标签进行取属性
$c2 = preg_match_all('/(w+)s*=s*(?:(?:(["'])(.*?)(?=2))|([^/s]*))/', $m1[0][$i], $m2); //匹配出所有的属性
for($j=0; $j<$c2; $j++) { //将匹配完的结果进行结构重组
$list[$i][$m2[1][$j]] = !empty($m2[4][$j]) ? $m2[4][$j] : $m2[3][$j];
}
}
 
return $list;
}
 
?>

效果如下

再扯蛋一下,还是正则取指定字符中的内容

 代码如下 复制代码

$str = preg_match_all('/(original-title=).*?(>)/is', $str,$array);

很简单吧。

时间: 2024-09-24 22:42:20

PHP正则匹配img及标签各属性值(匹配图片函数)的相关文章

正值表达式匹配html标签的属性值_正则表达式

正则表达式是做文本解析工作必不可少的技能.如Web服务器日志分析,网页前端开发等.很多高级文本编辑器都支持正则表达式的一个子集,熟练掌握正则表达式,经常能够使你的一些工作事半功倍.例如统计代码行数,只需一个正则就搞定.嵌套Html标签的匹配是正则表达式应用中一个比较难的话题,因为它涉及到的正则语法比较多,也比较难.因此也就更有研究的价值. 今天由于工作的需求,需要获取html标签的属性值,立即想到了正则表达式,标签如下: <circle id="ap_test" cx="

正值表达式匹配html标签的属性值

正则表达式是做文本解析工作必不可少的技能.如Web服务器日志分析,网页前端开发等.很多高级文本编辑器都支持正则表达式的一个子集,熟练掌握正则表达式,经常能够使你的一些工作事半功倍.例如统计代码行数,只需一个正则就搞定.嵌套Html标签的匹配是正则表达式应用中一个比较难的话题,因为它涉及到的正则语法比较多,也比较难.因此也就更有研究的价值. 今天由于工作的需求,需要获取html标签的属性值,立即想到了正则表达式,标签如下: <circle id="ap_test" cx="

javascript-Javascript获取有CSS动画的标签的属性值

问题描述 Javascript获取有CSS动画的标签的属性值 //CSS中的动画: @keyframes move{ 0% {left:0px;} 100% {left:100px;} } //CSS样式: .move1{ width:100px; height:100px; animation:move 1000ms; -webkit-animation:move 1000ms } //div标签: div id="1" class="move1" 或者 .mov

js如何获取标签的属性值

代码形式如下: <a class="a0" id="xxoo">ggggggggggggg<span class="b0">hhhhhhhhhhhhhhhhhhhhhhhh</span></a> 想获取span标签的class属性值 获取的方法如下 : 以下是引用片段:document.getElementById("xxoo").getElementsByTagName(&qu

正则匹配闭合HTML标签(支持嵌套)

任何复杂的正则表达式都是由简单的子表达式组成的,要想写出复杂的正则来,一方面需要有化繁为简的功底,另外一方面,我们需要从正则引擎的角度去思考问题.关于正则引擎的原理,推荐<Mastering Regular Expression>中文名叫<精通正则表达式>.挺不错的一本书. OK,先确定我们要解决的问题--从一段Html文本中找出特定id的标签的innerHTML. 这里面最大的难点就是,Html标签是支持嵌套的,怎么能够找到指定标签相对应的闭合标签呢? 我们可以这样想,先匹配最前

全面解析SEO中nofollow标签的属性作用

本文从五个知识点全面解析nofollow标签怎么用及nofollow标签写法:第一,nofollow是什么意思.第二,nofollow属性标签的用法.第三,rel nofollow的正确书写格式.第四,nofollow的应用领域.第五:什么是nofollow和noindex. 在分析之前先来说说新浪,网易两大门户博客对防止恶意滥发博客外链采用的nofollow标签写法,新浪博客nofollow以前存在过,但是现在我看到的并没有在博客里加上nofollow标签,但是网易博客现在确实是加了rel="

解读:ALT属性值对搜索引擎还有效吗

在网上看到了很多讨论图片ALT属性值优化对搜索引擎还有没有用的话题,因为当初设置ALT属性值初衷就是因为搜索引擎不能有效识别图片而设置的,并不是为了用户体验,如果ALT属性值不再有效,那我们可以不用对ALT设置值,可以为编辑和开发节省很多时间.下面我们通过实例来验证一下ALT属性值还有没有效: 首先,通过模拟搜索引擎蜘蛛来验证一下,下面通过华强电子网首页的一张图片为例.   以上是在网上寻找到的一个案例,ALT的属性值为"华强北电子市场价格指数周走势",这个页面的源代码中只有这样一个词

jaxb-Jaxb 怎么设置字段的属性值

问题描述 Jaxb 怎么设置字段的属性值 例如图片中圈红的 解决方案 http://zhidao.baidu.com/link?url=i848muwjGb0GNmQRgEJBh4mv-3tMZShl_J5SPiK70CiHizPDMI4lStjVK8-rqkiuOSp4zDTGCE-mVa6HlekPh2Z7B7wgp0ACMTUcMNp6YXq

PHP用正则匹配form表单中所有元素的类型和属性值实例代码

前言 最近工作中遇到一个需求,需要在正则匹配页面中,所有可能存在的 form 表单的元素,可能有 input,action,select,textarea等等所有可能的元素,本文给出一个代码示例.感兴趣的朋友们可以参考学习. 实例代码如下 假设页面 1.html 的网页源代码是: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>一个含有 form 表单