Php 使用preg_replace查找页面上的所有图像
如何使用preg_replace查找所有图像链接?我很难理解如何实现正则表达式 到目前为止,我所尝试的:Php 使用preg_replace查找页面上的所有图像,php,regex,preg-replace,Php,Regex,Preg Replace,如何使用preg_replace查找所有图像链接?我很难理解如何实现正则表达式 到目前为止,我所尝试的: $pattern = '~(http://pics.-[^0-9]*.jpg)(http://pics.-[^0-9]*.jpg)(</a>)~'; $result = preg_replace($pattern, '$2', $content); preg_replace,顾名思义,它取代了某些东西。您想使用preg_match_all 另一种从网页中查找所有图像链接的简单方
$pattern = '~(http://pics.-[^0-9]*.jpg)(http://pics.-[^0-9]*.jpg)(</a>)~';
$result = preg_replace($pattern, '$2', $content);
preg_replace,顾名思义,它取代了某些东西。您想使用preg_match_all
另一种从网页中查找所有图像链接的简单方法是使用简单的HTMLDOM解析器 //从URL或文件创建DOM
$html = file_get_html('http://www.google.com/');
//查找所有图像
foreach($html->find('img') as $element)
echo $element->src . '<br>';
这是从任何网页获取所有图像链接的简单方法。为了更好地理解,请添加示例。。。您当前拥有的一个示例链接和您想要的一个示例链接…正则表达式并不是所有问题的最终解决方案。@NHAHDH是正确的,您应该使用SAX或DOM和XPath。+1。如果您对网页中更复杂的结构感兴趣,那么这绝对是一个不错的选择。
foreach($html->find('img') as $element)
echo $element->src . '<br>';