es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Eres un traductor de español que traduce documentos de TI. Traduce lo siguiente al español. Reemplaza múltiples ocurrencias de una subcadena con una sola aparición de la misma.

Estoy tratando de realizar una limpieza de un texto HTML y quiero reemplazar múltiples ocurrencias de   por una sola ocurrencia de él.

Entonces, por ejemplo:

<o:p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</o:p></b></p> 

debería convertirse en

<o:p>&nbsp;</o:p></b></p>

a pesar del número de &nbsp;s, que podría variar.

Podría usar un replace() en un bucle, repitiéndolo hasta que el resultado varíe. Pero creo que podría existir un método más conciso o al menos más inteligente.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Una posible solución en Java consiste en utilizar una expresión regular para encontrar múltiples ocurrencias de &nbsp; y reemplazarlas por una sola ocurrencia. Puedes utilizar el método replaceAll() de la clase String y la siguiente expresión regular:

    str = str.replaceAll("( )+", " ");
    

    Esto reemplazará una o más ocurrencias de &nbsp; con una sola ocurrencia.

Comments are closed.