用php抓图片是个常用的需求,不管src在什么地方,还是单引号、双引号、没引号,都能匹配出来。

范例源码参考:

<?php  
    $str = <<<EOT
    <img src='1.jpg'  >
    <img src="2.jpg" >
    <img src=3.jpg  >
EOT;
$preg = '/\bsrc\b\s*=\s*[\'\"]?([^\'\"]*)[\'\"]?/i';
preg_match_all($preg, $str, $img_urls);
print_r($img_urls);
使用   /<img\b.*?(?:\>|\/>)/gi 对一个字符串进行全文匹配,获取所需要的 img 标签

使用   /\bsrc\b\s*=\s*[\'\"]?([^\'\"]*)[\'\"]?/i   对一个 img 标签进行匹配,获取所对应的 src 属性

注:因为个人书写手法的不一致,实际过程中坑你需要去除 \b \s 等一些特性限制,需根据实际需要进行修改

更详细的原文:
http://www.cnblogs.com/ImCehnyx/p/7163691.html

© 2019 Powered by Typecho & Theme Quark