将HREF链接添加到提及URL的文本(使用preg_replace)

时间:2011-12-16 13:57:30

标签: php preg-replace

我之前已经多次询问过这个问题,但是我无法让我的特定实现工作,所以想知道是否有人可以告诉我我的方法错误?!

我在我的网站上有一个Twitter提要,并且(使用PHP)想要用相关的HTML锚点和HREF替换推文中提到的任何URL。

示例推文可能是......

No BlackBerry 10 smartphones till Q4 2012: A bad day for BlackBerry fans today after it was revealed that due to... http://t.co/lNEdUUef

我正在使用以下preg_replace试图改变这个......

$tweet2 = preg_replace('#http://\S+#i', '<a href="$0">$0</a>', $tweet);

不幸的是,这并没有造成一点点差别,文本保持不变。

有人可以发现我做错的事情,并据此提出建议吗?

2 个答案:

答案 0 :(得分:3)

尝试以下方法:

$tweet2 = preg_replace('#http://(\S+)#i', '<a href="$0">$0</a>', $tweet);

答案 1 :(得分:1)

试试这个

$tweet2 = preg_replace( '#(http:\/\/[^ ]+)#i', '<a href="$1">$1</a>', $tweet );

它应该按预期工作