日期:2014-05-17  浏览次数:20485 次

求一个正则表达式
想取得图片的src,比如
<img   (一些别的属性)   src= "aaa.jpg "   也可以是单引号,或者没有引号   (一些别的属性)>

如何取得   aaa.jpg

------解决方案--------------------
<?php
$s = " <img height=\ "123\ " src=\ "1.jpg\ " width=\ "256\ "> ";
eregi( "src=[\ "|\ ']?(.*\.jpg).* ",$s,$r);
echo $r[1];
?>

结果:
1.jpg
------解决方案--------------------
$s = "一些其他代码 <script src=ds.js> </script> 一些其他代码 <img height=\ "123\ " src=1.jpg width=\ "256\ "> 一些其他代码 <img height=\ "123\ " src=1.jpg width=\ "256\ "> 一些其他代码 ";
preg_match_all( '/\ <img(?:\s.*)?src=(.+)(?:\s.*)?\> /U ',$s,$m);
print_r($m[1]);
------解决方案--------------------
<img.*?src=( '| ")?(? <target> .*?( '| ")?\s+.*>
------解决方案--------------------
大家考虑下这种情况
<img src= 'http://www.test.com/test.php?title=Image%20from%20 "Joah%20son " ' />
------解决方案--------------------
答案很多,仍不严密

preg_match_all( '/\ <img[^\> ]+src[\s\r\n]*=[\s\r\n]*([\ '\ "]?)([^\> \1]+)\1[^\> ]*> /i ',$str,$matches);
print_r($matches[2]);