php中使用正规表达式提取文章中的图片或者链接
kevin.Zhu 发布于:2013-1-16 15:31 分类:Php 有 11 人浏览,获得评论 0 条
<?php $theurl="http://www.linzl.com/archives/261.html"; if (!($contents= file_get_contents($theurl))) { echo 'Could not open URL'; exit; } $pattern_img='/<img.*src=(\"|\')(.+)\1.*>/U'; $pattern_link='/<a.*>.*<\/a>/U'; if (preg_match_all($pattern_img,$contents,$quote)) { echo "<p>图片<br />"; foreach($quote[2] as $img) echo "<img src='".$img."'/><br/>\n"; echo '</p>'; } else { echo '<p>没有图片 </p>'; } if (preg_match_all($pattern_link,$contents,$quote1)) { echo "<p>链接<br />"; foreach($quote1[0] as $link) echo $link."<br/>\n"; echo '</p>'; } else { echo '<p>没有链接 </p>'; } ?>
现在在详解一下:
<?php $theurl="http://www.linzl.com/archives/261.html"; if (!($contents= file_get_contents($theurl))) { echo 'Could not open URL'; exit; } //这段代码是php从远程获取文章内容 ?>
$pattern_img='/<img.*src=(\"|\')(.+)\1.*>/U'; $pattern_link='/<a.*>.*<\/a>/U'; if (preg_match_all($pattern_img,$contents,$quote)) { echo "<p>图片<br />"; foreach($quote[2] as $img) echo "<img src='".$img."'/><br/>\n"; echo '</p>'; } else { echo '<p>没有图片 </p>'; } //$pattern_img这是正规表达式表示获取图片链接 //$pattern_link 表示获取文字链接