PHP如何截取指定两个字符串之间的文字? 5

我用的wordpres!用了一款主题,在每篇文章的描述信息都会截取文章中的第一段文字作为描述,但是我的网站是用来做软件的,第一行文字是“软件大小”这四个字,所以造成了每篇... 我用的wordpres!用了一款主题,在每篇文章的描述信息都会截取文章中的第一段文字作为描述,但是我的网站是用来做软件的,第一行文字是“软件大小”这四个字,所以造成了每篇文章的描述信息都雷同!在Google管理员工具里出现500篇“短的元素说明”和“重复的元素说明”。
其中主题截取的函数如下:

if (!function_exists('utf8Substr')) {
function utf8Substr($str, $from, $len)
{
return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
'$1',$str);
}
}
if ( is_single() ){
if ($post->post_excerpt) {
$description = $post->post_excerpt;
} else {
if(preg_match('/<p>(.*)<\/p>/iU',trim(strip_tags($post->post_content,"<p>")),$result)){
$post_content = $result['1'];
} else {
$post_content_r = explode("\n",trim(strip_tags($post->post_content)));
$post_content = $post_content_r['0'];
}
$description = utf8Substr($post_content,0,220);
}
$keywords = "";
$tags = wp_get_post_tags($post->ID);
foreach ($tags as $tag ) {
$keywords = $keywords . $tag->name . ",";
}
}
?>
我需要截取每篇文章中“游戏说明:”后的文字作为描述摘要,不知道怎么实现,修改了
if(preg_match('/<p>(.*)<\/p>/iU',trim(strip_tags($post->post_content,"<p>")),$result))
这句,不是出错就是截取不到。
我想截取如下图中红色部分的文字作为文章描述摘要:

希望网友们能赐教一二!非常感谢!
大家可以去看一下我网页文章的描述信息:http://ipabar.org
难道没有人知道吗?
展开
 我来答
hello_0421
2011-04-16 · TA获得超过262个赞
知道答主
回答量:17
采纳率:0%
帮助的人:0
展开全部
$str='<h1 style="margin:0px">USB PC Joystick Game Controller</h1>';
preg_match_all('/<h1[^>]*>(.*)<\/h1>/',$str,$match);
print_r($match[1][0]);
追问
您能不能修改一下 if(preg_match('/(.*)/iU',trim(strip_tags($post->post_content,"")),$result))这段代码 啊?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
001创业者
2011-04-16 · TA获得超过504个赞
知道小有建树答主
回答量:435
采纳率:0%
帮助的人:285万
展开全部
游戏说明部分可以修改一下,比如说前面加个标签<div></div>
改成:
if(preg_match('/<div>(.*)<\/div>/iU',trim(strip_tags($post->post_content,"<div>")),$result))
更多追问追答
追问
这个方法确实可以,但是网站有600多篇文章,如果按照这样修改得改到什么时候啊
没有别的方法了吗?
追答
在模板文件里面改
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
singsin
2011-04-16 · 超过33用户采纳过TA的回答
知道答主
回答量:89
采纳率:0%
帮助的人:86.6万
展开全部
if(preg_match('/<strong>游戏介绍:<\/strong><\/p>\s+<p>(.*)<\/p>/iU',trim($post->post_content),$result))

无需去掉P标签再匹配,去掉了反而取不到
追问
谢谢您的回答,但是换上您给的代码后经测试还是去不到,能不能加QQ再聊?QQ:84527977
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友859ecf3
2011-04-20 · TA获得超过207个赞
知道小有建树答主
回答量:636
采纳率:0%
帮助的人:129万
展开全部
preg_match('/游戏介绍.*<\p>.*<p>(.*)<\/p>/isU',$body,$arr);
试下
追问
还是不行,还是截取的第一段文字,奇怪了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式