当前位置:Gxlcms > PHP教程 > 如何正则出HTTP开头的JPG图片?

如何正则出HTTP开头的JPG图片?

时间:2021-07-01 10:21:17 帮助过:202人阅读

我使用 simple_html_dom.php, 只会找出HTTP开头的图片,如何再加一个JPG结尾的判断?

foreach ($html->find('img[src^="http"]') as $element) 


或者
哪位给写个 preg_match_all 所有 HTTP开头的JPG图片?谢谢。


回复讨论(解决方案)

不是太明白你想表达的意思,这是我学正则的时候写的,获取一个网页图片的,

.*/U';//其中的//为分隔符    preg_match_all($pattern,$subject,$result);//查找所有的匹配项    if($isinsite==0)    {       foreach ($result as $key => $value) //二维数组$result[n][m];               {	             if($key==1)	               {   		            foreach ( $value as $key => $value )//取$result[m]		                    {			                   $isownsite=parse_url($value);			                   $url=$isownsite[host]?$value:$site.$isownsite[path];//获取该网页的所有图片还其他网址的			                   $imgcontent.="|";		                    }		           }               }    }    if($isinsite==1)    {       foreach ($result as $key => $value) //二维数组$result[n][m];               {	             if($key==1)	               {   		            foreach ( $value as $key => $value )//取$result[m]		                    {			                   $isownsite=parse_url($value);			                   $url=$isownsite[host]?NULL:$site.$isownsite[path];//只获取该site的不含外部网址			                   if($url!=NULL)			                   $imgcontent.="|";		                    }		           }               }    }    return $imgcontent;}?>

.*.*/U'
这样的话,连"../images/1.jpg"也抓出来了。
而我需要的是 http:// 开头的所有图片 "http://domain.com/images/1.jpg"

你就正则匹配http开头就好了

你就正则匹配http开头就好了
现在过渡依赖于simple_html_dom,怎么修改正则呢?

再加一句正则就可以了

foreach ($html->find('img[src^="http"]') as $element) {
if(preg_match('/\.jpg/i',$element->src)){
echo $element->src . "
\n";
}
}

感谢 ,life169

你就正则匹配http开头就好了











快来给我 说说你我离婚后 分组家庭的情况吧

phpinfo();

人气教程排行