繁体   English   中英

PHP正则表达式查找链接

[英]PHP regex to find links

因此,我目前正在研究正则表达式,该正则表达式将在也具有bbcode支持的论坛上使用。 该正则表达式假定捕获以https,http和www开头的所有链接,并使它们成为链接。

当前,它捕获所有https和http,但是不捕获www。 而且我不知道如何获取以www开头的内容。

还请记住,如果链接已经在bbcode中,则不应在此正则表达式中捕获该链接。

return preg_replace('/(?<!src=[\"\'])(http(s)?:\/\/(www\.)?[\/a-zA-Z0-9%\?\.\-]*)(?=$|<|\s)/','<a href="$1">$1</a>', $text);

我可以建议尝试:

(?<!src=[\"\'])((http(s)?:\/\/(www\.)?|(www\.))[\/a-zA-Z0-9%\?\.\-]*)(?=$|<|\s)

我认为这应该可以捕获http(s)和www。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM