Pregunta

necesitar un preg_replace sencilla para convertir todo <br> <br/> y todas las posibles combinaciones de <br /> br.

Esto tiene que trabajar con el fin para que pueda procesar una cadena es decir: $output = preg_replace('', '<br />', $input)

Gracias a todos!

¿Fue útil?

Solución

Una expresión regular para gobernarlos a todos:

$output = preg_replace('/<\s*br[^>]*>/i', '<br />', $input);

Otros consejos

[obligatorio HTML analizador comentario]

Si está trabajando con HTML desconocida y no coherente (como suena como si estuviera), a continuación, poner la expresión regular, es posible daño a sí mismo. Encontrar una lista de etiquetas y alterar un documento HTML es lo analizadores fueron construidos para.

Métodos PHP DOM y se ahorrará muchos dolores de cabeza.

/ /

Trate de este patrón

<\s*[bB][rR]\s*\/?\s*>
$output = preg_replace('/< ?[bB][rR] ?\/? ?>/', '<br />', $input);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top