如何使用正则从内容中提取图片url,并删除内容中与图片有关的代码?

应该网 2008-06-09 10:55:01
如何使用正则从内容中提取图片url,并删除内容中与图片有关的代码?

asp的正则在网上有:http://www.dedecms.com/web-art/ASP_VbScript/20060321/27938.html

php的如何写呢?

先谢了,100分相送。

...全文
361 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
可以使用ereg_replace替换为空就可以了
  • 打赏
  • 举报
回复
<?php
$image_html = '<P align=center><IMG alt="abc" src="http://img1.qq.com/ent/pics/7274/7274403.jpg]http://img1.qq.com/ent/pics/7274/7274403.jpg" border=1>';
preg_match_all('/<IMG.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $image_html, $strResult);
for($i = 0; $i < count($strResult[1]); $i++)
{
printf("%d %s \n", $i, $strResult[1][$i], $strResult[2][$i]);
}

?>
  • 打赏
  • 举报
回复
 //函数名:get_image_fromcontent( &$content)
//作用:在含有HTML标签并带有图片的内容中过滤出图片地址(去除图片样式只保留图片地址)
//参数:$content(待过滤的字符串)
//返回值:字符串
//备注:数据库中查询带图片的内容最有效的查询语句-- ***(查询项) REGEXP '<\s*img[^>]+src\s*=\s*[^>]+>'
private function get_image_fromcontent( &$content)
{
//获取内容中图片
//取得第一个匹配的图片路径
$retimg="";
$matches=null;
//标准的src="xxxxx"或者src='xxxxx'写法
preg_match("/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i", $content, $matches);
if(isset($matches[2])){
$retimg=$matches[2];
unset($matches);
return $retimg;
}
//非标准的src=xxxxx 写法
unset($matches);
$matches=null;
preg_match("/<\s*img\s+[^>]*?src\s*=\s*(.*?)[\s\"\'>][^>]*?\/?\s*>/i", $content, $matches);
if(isset($matches[1])){
$retimg=$matches[1];
}
unset($matches);
return $retimg;
}
应该网 2008-06-09
  • 打赏
  • 举报
回复
顶一下,,,先谢了。
fxs_2008 2008-06-09
  • 打赏
  • 举报
回复

//提取url
$pattern="|<img[^>]*?src="([^>]*?)".*?> |is"; //本匹配只匹配符合规xhtml规范的src属性
$regcount=preg_match_all($pattern,$text,$arr,PREG_SET_ORDER); //将正则结果存在substr数组中
echo '<pre>';
print_r($arr);
echo '</pre>';


//删除img
preg_replace ('/<img.*?>/is','', $text )

应该网 2008-06-09
  • 打赏
  • 举报
回复
$str= '看看发一篇文章 <IMG SRC= "../images/49.gif">中有没图片 ';
$patten = '/<img.*?>/i';
$str = preg_replace($patten,'',$str);
echo $str;

替换,找到了一个正则,结贴。谢了

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧