Я использовал str_replace для других bb-кодов, но я застрял с частью URL.
Мне нужно конвертировать:
[url=http://maps.google.com/maps?ie=UTF-8&oe=utf-8&rls=org.mozilla:en-US:official&client=firefox-a&um=1&q=brits+pub&near=Pasadena,+CA&fb=1&cid=0,0,17926180203917841249&sa=X&oi=local_result&resnum=1&ct=image]Brits[/url]
до
<a href="ttp://maps.google.com/maps?ie=UTF-8&oe=utf-8&rls=org.mozilla:en-US:official&client=firefox-a&um=1&q=brits+pub&near=Pasadena,+CA&fb=1&cid=0,0,17926180203917841249&sa=X&oi=local_result&resnum=1&ct=image">Brits</a>
Почему бы вам не взглянуть на другие парсеры BBCode ?
Просто замены тегов недостаточно, так как это может (и будет) приводить к неправильной разметке.
На самом деле уже есть хороший вопрос об этом: Лучший способ разобрать bbcode .
Также, при использовании уже существующей библиотеки синтаксического анализатора BBCode рекомендуется попытаться создать свою собственную.