Ver Mensaje Individual
  #16 (permalink)  
Antiguo 02/09/2010, 17:17
vega22
 
Fecha de Ingreso: septiembre-2007
Mensajes: 99
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Ayuda con una expresión regular sencilla

Cita:
Iniciado por abimaelrc Ver Mensaje
No puede borrar los que están en <p>&nbsp;</p> porque yo le indico que esos los añada. Si te fijas hay, en el segundo parametro $1. Si copias y pegas fielmente ese código verás que no se borra.
Es verdad, yo cambié las variables para adaptarlas a mi script por eso no iba. Bien, ese es el modo en que lo he resuelto yo (añadiendo las cadenas válidas que antes ha borrado), pero usando una línea más y str_replace. Creo que tu fórmula es la mejor de todas las que se pueden emplear. Es posible que no exista expresión regular ninguna que haga lo que quiero sin tener que reañadir lo antes eliminado.

Tema <br /> cuidadosamente explicao para el insistente naciostars :
Obviamente nadie usa en un texto un párrafo vacío como salto de línea. Un <p></p> se usa como espaciador entre párrafos que trata de mantener las proporciones en el flujo del texto. Si usas <br /> como salto de línea, para lo que está hecho, su comportamiento será similar en todos los navegadores, aunque habrá variaciones menores debidas al distinto manejo de las proporciones del texto en cada uno de ellos. Yo uso constantemente <br /> como salto de línea. Semánticamente es para lo que está hecho, y nada más. Pero úsalo como espaciador, por ejemplo:

Esteban<br /> <-salto de línea
<br /> <-espaciador
Julián

y ya verás el espacio tan diferente que hay entre ambos nombres entre los antiguos IE y los nuevos nanegadores. Así de simple. Si en vez de un <br /> usas dos o más, las diferencias se hacen cada vez más patentes.

Usar <br /> para espaciar texto es pésimo en la práctica y en la teoría patea toda la coherencia semántica.

Por otro lado, mirad en esta página el debate abierto sobre extirpar el <br /> o no como salto de línea en xhtml2: http://www.w3.org/TR/xhtml2/mod-text.html (sección 9.15)

Pero espaciar, hay que espaciar. Lo cual puede convertirse en algo muy complejo, sobre todo si queremos que las cosas queden como esperamos en los IE6/7, que tienen severos problemas con el flujo del texto. ¿Qué uso? principalmente estilos, como debe ser. Margin-tops por aquí, margin-bottoms por allá. Es muy engorroso y trabajoso, pero se hace. ¿Qué pasa si tengo prisa? Que dejo que el TinyMCE meta algún que otro párrafo vacío como espaciador en el flujo de texto. ¿Por qué no lo hago más, cuando es un método bastante práctico que da muy buenos resultados? Porque escucho demasiado a los ortodoxos. Pero, en realidad, si lo pensamos bien, semánticamente es correctísimo usar un párrafo vacío <p></p> si quieres que haya un espacio doble entre dos párrafos que conserve la proporción del flujo de texto. Lo ideal es separar párrafos con distancias iguales a la altura de un párrafo, y para ello lo super lógico es usar un párrafo. Vacío, claro.

Así de simple.

Introducir el dichoso &nbsp; en medio se hace para los IE, que si no, consideran que <p></p> es igual a nada.

Con esto espero dejar zanjada de una vez esta discusión paralela de críos sobre si hacemos los deberes de la escuela como dice el maestro o no. Aquí estábamos para las expresiones regulares y no para complicarnos más la vida unos a otros.