说我有以下字符串:

$ string ='太棒了,@ jason,我想@sally也会喜欢。

我正在使用:

$mentions = strstr($string, '@');
echo $mentions 

哪个输出

@jason I think @sally would love it too.

所需的输出

@jason @sally

我只是不知道如何在php中做到这一点,在js中我只是这样做:

hashtags = /\@\w+/g;
var matches = string.match(hashtags);
alert(matches);

php中的preg_match()返回一个布尔值,所以我能得到的最接近的是strstr()...但是在第一次匹配后返回整个字符串。

===============>>#1 票数:4 已采纳

您可以将preg_match_all与相同的正则表达式一起使用:

<?php

$string = 'Great @jason I think @sally would love it too.';
preg_match_all("/@\w+/", $string, $matches);

var_dump($matches);

?>

演示: http//ideone.com/NgrRvH

  ask by Aaron translate from so

未解决问题?本站智能推荐: