经常和图片打交道,不得不用到一些提取图片中scr、alt、title、等的属性,这里总结给大家一些常用的,感觉还不错,比较通用! 
PHP正则表达式匹配img中任意属性PHP

复制代码代码如下:
<?php

/*PHP正则提取图片img标记中的任意属性*/ 
$str = '<center><img src="/uploads/images/20100516000.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]; (PS:T不错的php Q扣峮:276167802,验证:csl)

/*PHP正则替换图片img标记中的任意属性*/ 
//1、将src="/uploads/images/20100516000.jpg"替换为src="/uploads/uc/images/20100516000.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/20100516000.jpg",并省去宽和高 
print preg_replace('/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i',"\${1} \${2}uc/images/\${3}>",$str);

?>

PS:关于正则,本站还提供了2款非常简便实用的正则表达式在线工具供大家参考使用:

JavaScript正则表达式在线测试工具:http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:http://tools.jb51.net/regex/create_reg

最新文章

  1. Redmined的历史记录显示 &quot;Updated by {{author}} {{age}} ago&quot;
  2. [转帖]HOWTO rename column name in Sqlite3 database
  3. 函数(def)
  4. MYbatis调试日记(三)
  5. iOS开发 - 一个天真的搜索控制器的独白
  6. UVA 796 - Critical Links (求桥)
  7. [转载]js 遍历数组对象
  8. Android 刷新下拉控制 SwipeRefreshLayout
  9. currentStyle和getComputedStyle的兼容写法
  10. JMeter怎么在get URL请求、POST请求中添加动态参数用于服务器段安全验证
  11. C# DateTime简单的定时器用法
  12. IntelliJ IDEA下Git的配置与使用(命令行下)
  13. Dynamics 365-N:N Relationship的记录处理
  14. 20155219 mybash的实现
  15. [Java]进程与线程的区别(转)
  16. Android训练课程(Android Training) - 高效的显示图片
  17. 不同的路径12障碍物 &#183; Unique Paths12
  18. ubuntu下禁用和恢复触摸板
  19. Ubantu Mark
  20. Net编程 详解DataTable用法【转】

热门文章

  1. ubuntu 配置虚拟主机
  2. updatepanel中使用alert弹出框方法
  3. css3 实现多行文本折行
  4. 浏览器的 16ms 渲染帧
  5. 详解C中volatile关键字(转)
  6. 更新到xcode10以后出现几个无奈的问题,谨已此篇告诫广大ioser升级请慎重
  7. Codeforces 371E Subway Innovation (前缀和预处理应用)
  8. POJ 1155 TELE [树状DP]
  9. Visual Studio开启SSL的支持
  10. C# 格式化 中文星期 显示