Tengo un problema con un BBCode, que resulta que no puedo anidar citas en un foro. He intentado resolverlo hace algunos meses, pero no encuentro la solución.
![Neurótico](http://static.forosdelweb.com/fdwtheme/images/smilies/scared.png)
El código que uso es éste:
Código PHP:
function reescribir ($str) {
$busqueda = array(
'/\[b\](.*?)\[\/b\]/is',
'/\[i\](.*?)\[\/i\]/is',
'/\[u\](.*?)\[\/u\]/is',
'/\[img\=(.*?)\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is',
'/\[cita\](.*?)\[\/cita\]/is',
'/\[cita\=(.*?)\](.*?)\[\/cita\]/is',
'/\[youtube\=http\:\/\/(.*?)\.youtube\.com\/watch\?v\=(.*?)\]/is'
);
$reemplazo = array(
'<strong>$1</strong>',
'<em>$1</em>',
'<u>$1</u>',
'<img src="$1" />',
'<a href="$1" target="_blank" rel="nofollow">$1</a>',
'<a href="$1" target="_blank" rel="nofollow">$2</a>',
'<span class="cita">Cita:<p class="textoCita">$1</p></span>',
'<span class="cita">$1 escribió:<p class="textoCita">$2</p></span>',
' <object width="425" height="350">
<param name="movie" value="http://www.youtube.com/v/$2"></param>
<param name="wmode" value="transparent"></param>
<embed src="http://www.youtube.com/v/$2" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed>
</object>'
);
$str = preg_replace ($busqueda, $reemplazo, $str);
$str=smilies($str);
return $str;
}
![Pensando](http://static.forosdelweb.com/fdwtheme/images/smilies/scratchchin.gif)
Muchas gracias.
![de acuerdo](http://static.forosdelweb.com/fdwtheme/images/smilies/dedosarriba.png)