PHP - preg_replace - 文本链接作为可点击链接


PHP - preg_replace - text link as clickable link

我使用此preg_replace将脚本中的文本 url 更改为可单击: 将文本链接替换为链接 preg_replace

昨天我测试了我的脚本,这些preg_replace无法正常工作。

下面是示例:

(...) stronie  http://tpn.pl/nowosci/uwaga-skiturowcy-1).

这些preg_replace最终创建了这个:

stronie <a href="http://tpn.pl/nowosci/uwaga-skiturowcy-1)." target="_blank">tpn.pl</a>

为什么preg_replace添加")"。在网址的末尾?如何在 URL 字符串的末尾只接受"A-Z, a-z, 0-9,/"(我想我写了所有内容都接受网址的结尾?

谢谢。

编辑:

这是我的代码:

$sub_message = preg_replace('|(['w'd]*)'s?(https?://(['d'w'.-]+'.['w'.]{2,6})[^'s']'['<'>]*/?)|i', '$1 <a target="_blank" href="$2">$3</a>', $value['description']);
$sub_message = trim(str_replace("'n", "<br />", $sub_message));

您可以使用以下代码将 url 更改为字符串中的链接:

<?php
$x="foobar http://example.com foobar";
echo preg_replace("~(https?://(?:www'.)?[^'s]+)~i","<a href='$1'>$1</a>",$x);

在线演示 : https://eval.in/532195