2

我正在尝试在 PHP 活动系统中获取元内容,问题是它提供的内容为

admin 写了一篇新帖子,FIRE 2 天,2 小时前

所以在这里我想得到“火”这个词,但因为它是标题,所以它是动态的,所以我能做的就是找到帖子这个词,因为它很常见,所以我可以在post,if之后得到下一个post,词当下。谁能建议我如何做到这一点?假设我们还有一个这样的内容

管理员在 2 天 3 小时前发布了更新

它没有,post,所以它会被避免。

4

4 回答 4

6

使用正则表达式

$string="admin wrote a new post, FIRE 2 days, 2 hours ago";
$result=preg_split('/post,/',$string);
if(count($result)>1){
$result_split=explode(' ',$result[1]);
print_r($result_split[1]);
}

这个输出 FIRE

现场演示

另一种方式

$string="admin wrote a new post, FIRE 2 days, 2 hours ago";
$result=preg_match_all('/(?<=(post,))(\s\w*)/',$string,$matches);
print_r($matches[0]);

现场演示

于 2013-01-23T07:36:02.380 回答
4

只需使用explode()方法,定位单词post的位置,提取下一个单词。

$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);

foreach( $pieces as $key => $value )
{
if($pieces[$key] == 'post' )
{
echo $pieces[$key+1];
break;
}
}

或者,专家方法:

echo $pieces[array_search('post', $pieces)+1];
于 2013-01-23T07:48:33.323 回答
1

为此使用正则表达式。

$string="admin wrote a new post, FIRE 2 days, 2 hours ago";
preg_match('/(?<=post, )\S+/i', $string, $match);
echo $match[0];

希望这对你有用。

于 2013-01-23T07:55:58.577 回答
0
  • 拆分字符串并放入数组
  • 获取“帖子”的索引
  • 获取位置 index+1 的数组的值
于 2013-01-23T07:46:33.720 回答