PHP:搜索所有Twitter用户名的字符串并提取它们

时间:2012-02-22 23:18:25

标签: php string preg-replace preg-match

我有一个字符串,我需要从字符串中提取所有的twitter用户名。 例如:

Hello @twitter and @facebook

我需要两个进入具有可能计数值的数组。

所以它看起来像这样:

$username[0] = "twitter";
$username[1] = "facebook";

对于任何可以放入推文的用户名,我都需要这个。

为了更进一步,我需要这个,所以我可以将一条简单的推文变成一个带链接的推文。

所以

Hello @twitter and @facebook

变为

Hello <a href="http://twitter.com/twitter">@twitter</a> and <a href="http://twitter.com/facebook">@facebook</a>

因此重写它。

1 个答案:

答案 0 :(得分:4)

您可以使用正则表达式轻松完成。这是你应该做的替换twitter用户名

$text = preg_replace('/@(\w+)\b/i', '<a href="http://twitter.com/$1">@$1</a>', $text);

要提取用户名,您应该使用preg_match_all。