Es que una cosa son los saltos de línea html, que son visuales
y distinto los saltos de línea ascii, que también son visuales, pero no competen a html, estos saltos de línea sólo se ven a la hora de examinar el código. Y son
\n ó
\r\n generalmente. Con expresiones regulares y replace puedes haacerlo fácilmente
Código Javascript
:
Ver originalhtml = html.replace(/(<(\s)?\/[A-Za-z0-9]{2,6}(\s)?>)/g,"$1\n");
He puesto un ejemplo de expresión regular que puede servir, no he probado que funcione en el 100% de los casos. La idea es que capture las etiquetas de cierre de todos los tags y los reemplace por la etiqueta de cierre ($1 capturado con () ) y un salto de línea simple.
Esto convertiría
en
Lo mismo puedes hacer con los principios de etiqueta mediante
<(?!\/)[A-Za-z0-9]{2,6} o similares. Aplicando esas dos regexp, una tras otra, la salida del html anterior sería
Código Javascript
:
Ver original<form action="search" method="post">
<input type="text" placeholder="Buscar" name="palabra"></form>
</section></header>
Un saludo.