Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/01/2009, 17:43
SubZero_mb
 
Fecha de Ingreso: marzo-2004
Mensajes: 283
Antigüedad: 20 años, 2 meses
Puntos: 2
Dividir texto en partes

Buenas noches,

Tengo el siguiente codigo
Código:
$coincidencia_html = '/<p.*p>/';
preg_match_all($coincidencia_html, $texto, $texto_parrafos);
que para un texto como este:
Código:
$texto='<p>Hola mundo</p>
<p>Mi nombre es Pepe</p>
<p>Soy de Madrid</p>'
Me devuelve el array
Código:
$texto_parrafos = array('<p>Hola mundo</p>','<p>Mi nombre es Pepe</p>','<p>Soy de Madrid</p>')
.
El problema viene cuando quiero que me haga lo mismo pero no solo con las etiquetas <p> sino tambien con las <ul> y las <img>. Es decir, que teniendo este texto
Código:
$texto='<p>Hola mundo</p>
<ul>
<li>Mi nombre es Pepe</li>
<li>Tengo 22</li>
</ul>
<img src "ruta/img.jpg" />
<p>Soy de Madrid</p>'
el array quede asi:
Código:
$texto_parrafos = array('<p>Hola mundo</p>','<ul><li>Mi nombre es Pepe</li><li>Tengo 22</li></ul>','<img src "ruta/img.jpg" />','<p>Soy de Madrid</p>')
.
Se que podia probar primero haciendo lo de antes con <p>, luego con <ul> y al final con <img>, pero haciendolo de esta manera no se mantendría el orden con el que aparecen las diferentes partes (me quedaria las dos primeras partes con <p>, la tercera con <ul> y la <img> iria la ultima, pero como veis en el texto anterior ese no es el orden correcto.
Ojala podais ayudarme con esto porque me estoy volviendo loco. Muchas gracias por vuestro tiempo

Última edición por SubZero_mb; 07/01/2009 a las 17:53