Tengo un párrafo de texto proveniente del backend que tiene
entre corchetes así:
...some text { <br /> } { <br /> } ...more texty algunos estilos HTML en línea como:
...some text <strong>some text</strong>Necesito eliminar todo esto, pero necesito un descanso donde están los saltos de línea.
¿Cómo se pueden hacer estos con Regex?
Tengo una solución que no requiere expresiones regulares. Sin embargo, dado que no conozco el contenido de su html, es posible que NO funcione bien. Entonces, pruébalo para asegurarte.
La primera parte es un reemplazo de texto simple, por lo que no requiere expresiones regulares
htmlData.replaceAll('{ <br /> } ', '\n'); Luego, crea un elemento DOM, inserta todos los datos html en él y obtiene el atributo innerText que son los datos de texto sin las etiquetas.
const p = '...some text <strong>some text</strong> more text <b>more</b> text...some text { <br /> } { <br /> } ...more text'; console.log("BEFORE: "+p); let tmp = document.createElement("DIV"); // Replace into newlines. tmp.innerHTML = p.replaceAll('{ <br /> } ', '\n'); // Get the text. console.log("AFTER: "+tmp.innerText);