Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/03/2010, 06:29
chiflon
 
Fecha de Ingreso: junio-2006
Mensajes: 14
Antigüedad: 17 años, 10 meses
Puntos: 0
problema con preg_replace

Buenas a todos!!!
estoy creando un foro y ahora mismo estoy liado con la parte de escribir un post nuevo y estoy creando un codigo bbcode propio.
tengo para cambiar la fuente estas variables
$bbcode[] = "/\[font\=(.*)\](.*)\[\/font\]/i";
$xhtml[] = "<div style=\"font-family:$1\">$2</div>";

y para cambiar el color
$bbcode[] = "/\[color\=(.*)\](.*)\[\/color\]/i";
$xhtml[]="<span style=\"color: $1\">$2<\/span>";

todo funciona correctamente cuando pongo una frase en comic sans y en azul por ejemplo
Código:
[ color=#0000FF][ font=Comic Sans MS]Hola esto esta en comic sans y en azul[/font][/color]
me devuelve
Código HTML:
<span style="color: #0000FF"><div style="font-family:Comic Sans MS">Hola esto esta en comic sans y en azul</div></span> 
el problema viene cuando lo hago al reves
Código:
[ font=Comic Sans MS][ color=#0000FF]Hola esto esta en comic sans y en azul[/color][/font]
me devuelve esto
Código HTML:
<div style="font-family:Comic Sans MS][color=#0000FF]Hola esto esta en comic sans y en azul[/color"></div> 
no tengo mucha tecnica con la funcion preg_replace ni con las expresiones PRCE
He leido un post que explica estas expresiones pero nose cual usar para areglar esto

alguna ayudita???
muchas gracias :D!!