Jag kan inte hjälpa dig med ditt... men jag kan visa hur min funktion ser ut:
$text = preg_replace("'\[URL\](.*?)\[/URL\]'is","<a href=\"$1\" target=\"_blank\">$1</a>",$text);
$text = preg_replace( "'\[IMG\](.*?)\[/IMG\]'is","<img src=\"$1\">",$text);
Allt som skrivs mellan [ URL] och [ /URL] blir en länk... samma sak med [ IMG][/ IMG]