正则表达式http / www链接

时间:2009-02-07 04:04:28

标签: php regex

正则表达式看起来如何使以http或www开头的文字可点击?

我目前的bbcode:

function bbcode($text) {
$text = htmlspecialchars($text);
$text = nl2br($text);

$find = array(
              "'\[b\](.*?)\[/b\]'is",
              "'\[i\](.*?)\[/i\]'i",
              "'\[url\](.*?)\[/url\]'i"
              );

$replace = array(
              "\\1",
              "\\1",
              "\\1"
                );

$text = preg_replace($find, $replace, $text);

return $text;
}

如您所见,我使用[url] link [/ url]链接ATM。

提前致谢。

P.S。替换数组中的html不会显示...

1 个答案:

答案 0 :(得分:4)

这是一个很简单的方法:

Find: (http://[^ ]+)
Replace: <a href="\\1">\\1</a>

Find: (www\.[a-zA-Z0-9\-]\.[^ ]+)
Replace: <a href="\\1">\\1</a>