奇怪了为什么提出不出来呢?请高手指点一下:
$str = '<IMG src=\"/uploadfile/20081030/20081030093700574.jpg\" border=0>';
$pattern = "/<img.*?src[\s]*=[\s]*[\\]?[\"|\']?[\s]*([^\s|\"|\'|\\|>]+).*?[\/]?>/is";
preg_match_all($pattern,$subject,$matches);
var_dump($matches);
echo "<hr>";
$str = '<IMG src=\"/uploadfile/20081030/20081030093700574.jpg\" border=0>';
$pattern = "/<img.*?src[\s]*=[\s]*[\\]?[\"|\']?[\s]*([^\s|\"|\'|\\|>]+).*?[\/]?>/is";
preg_match_all($pattern,$subject,$matches);
var_dump($matches);
echo "<hr>";
$str = '<IMG src=\"/uploadfile/20081030/20081030093700574.jpg\" border=0>';
$pattern = "/<img.*?src[\s]*=[\s]*[\\]?[\"|\']?[\s]*([^\s|\"|\'|\\|>]+).*?[\/]?>/is";
preg_match_all($pattern,$str,$matches);
echo $matches[1][0];
echo "<hr>";
用双引号,单引号的话不会分析里面,完全当成一个字符串的。或者
$str = '<IMG src="/uploadfile/20081030/20081030093700574.jpg" border=0>';
也行
$str是接收表单通过string addslashes ( string str )处理过的数据,不是由我们所加双引号单引号的
$pattern = "/ <img.*?src[\s]*=[\s]*[\\\]?[\"|\']?[\s]*([^\s|\"|\'|\\\|>]+).*?[\/]?>/is";
preg_match_all($pattern,$str,$matches);
echo $matches[1][0];
echo " <hr>"; 这样子试下。
http://topic.csdn.net/u/20081031/01/13af6214-55af-434d-ab70-d1d54294c2a9.html
$pattern = "/ <img.*?src[\s]*=[\s]*[\\\]?[\"|\']?[\s]*([^\s|\"|\'|\\\|>]+).*?[\/]?>/is";
preg_match_all($pattern,$str,$matches);
echo $matches[1][0];
echo " <hr>";