如何修改此正则表达式以包含https?

时间:2011-05-22 22:52:30

标签: php regex

我有这个正则表达式,我用它来创建输入到textarea的URL的可点击链接。我没有编写代码,也不知道如何修改代码,以便在文本以http或https开头时创建链接。

$html = preg_replace('"\b(http://\S+)"', '<a href="$1">$1</a>', stripslashes($rows['body']));

3 个答案:

答案 0 :(得分:4)

向正则表达式添加?使前面的字符可选。

$html = preg_replace('"\b(https?://\S+)"', '<a href="$1">$1</a>', stripslashes($rows['body']));

答案 1 :(得分:2)

替换

\b(http://\S+)

使用:

\b(https?://\S+)

所有在一起:

$html = preg_replace('"\b(https?://\S+)"', '<a href="$1">$1</a>', stripslashes($rows['body']));

答案 2 :(得分:0)

没有正则表达式专家,所以这可能有效:

$html = preg_replace('"\b(http://\S+|https://\S+)"', '<a href="$1">$1</a>', stripslashes($rows['body']));