正则替换,例如去掉a
成都创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为永泰企业提供专业的网站设计制作、网站制作,永泰网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。
$str = preg_replace("/a[^]*(.*?)\/a/is", "$1", $str);
echo $str;
采集列表页只要是为了获取对应内容页的链接
获取到内容页链接后 然后使用正则匹配 你要采集的信息
采集原理 可以参考(获取列表页的所有图片)
添加节点:
选择要增加采集的栏目:
进入增加节点表单:
在节点名称框里起个名字,然后把要采集的新浪各地新闻列表地址copy过来:
下来发现好多选项,如“采集页面地址方式二,内容页地址前缀...”先不要理他,后面再一一详解,直接拉到 “信息链接区域正则”这里:
6
这里是设置采集的列表信息链接区域正则,我们点击查看新浪各地新闻列表“源文件”:
7
把源文件代码copy到Dreamweaver里,在Dreamweaver里选定要采集的信息链接区域:
在connect.php搜索“//替换列表模板/标签模板/搜索模板”
在上方增加以下代码:
//获取内容页第一张大图片
function diy_imgFirst($r){
global $empire,$dbtbpre;
$fr=$empire-fetch1("select newstext from {$dbtbpre}ecms_news_data_1 where id='$r[id]'");
$newstext=stripslashes($fr['newstext']);//去除反斜杠并且获取文章正文内容
$pattern = "/.*src=\"([^^]*?)\".*/i"; //正则
preg_match_all($pattern, $newstext, $match);
if(count($match[1])=1){
//return $match[1][0];//返回第一张图片地址
$diyfpic=$match[1][0];
}else{
$diyfpic=$r['titlepic'];
}
return $diyfpic;
}
还是修改这个文件,搜索
1 $titleurl=sys_ReturnBqTitleLink($r);//链接
在下方增加以下代码:
1 $diyfpic=diy_imgFirst($r);
还是这个文件,搜索
1 $listtemp=str_replace('[!---titleurl--]',$titleurl,$listtemp);
在下方增加以下代码:
1 $listtemp=str_replace('[!---diyfpic--]',$diyfpic,$listtemp);
后台在 管理列表模板 的list.var中,直接使用[!---diyfpic--]
最好把
$diyfpic=$r['titlepic'];
改成
$diyfpic='e/data/images/notimg.gif';
因为一般没有大图,就没有缩略图。或者留空也行。
以上方法在帝国CMS 6.6中测试通过,7.0未测试