Преобразование URL-адресов в строку в строке с помощью preg_replace ()

Я пытаюсь преобразовать URL-адреса в ссылки в строке

У меня есть следующая строка:

$x="Welcome to my [homepage](http://example.com) ,Please check our [About us](http://example.com/about-us) page for more info about this site. 

Я хочу преобразовать все внутри [и], чтобы связать заголовок и все внутри (и) с значением атрибута href:

Добро пожаловать на мою домашнюю страницу , пожалуйста, ознакомьтесь с нашей страницей О нас , чтобы узнать больше об этом сайте.

Я попробовал функцию preg_replace () , но это не работает

 $x="Welcome to my [homepage](http://example.com) ,Please check our [About us](http://example.com/about-us) page for more info about this site"; echo preg_replace("/\[([^\]+)\]\(([^\)]+)\)/i","<a href='$2'>$1</a>",$x); 

Я получаю ту же строку в выходе:

 Welcome to my [homepage](http://example.com) ,Please check our [About us](http://example.com/about-us) page for more info about this site. 

Что-то не так с моим кодом?

Пожалуйста помоги!

Related of "Преобразование URL-адресов в строку в строке с помощью preg_replace ()"

Вы можете использовать следующее регулярное выражение, например:

 echo preg_replace("/\[(.*?)\]\((.*?)\)/","<a href='$2'>$1</a>",$x); 

Regex

 $x = str_replace("[homepage]", "<a href='www.example.com/homepage'>homepage</a>", $x);