Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

164
Vistas
¿Cómo reemplazar expresiones coincidentes sin interrumpir la entrada del usuario en contenteditable?

Estoy buscando coincidencias de expresiones regulares específicas en un texto en un div contenteditable . Encuentro las coincidencias correctas:

 <script> const regex = /my_regex/g; let content = $("#contenteditable").text(); let matches = content.match(regex); if (matches) { matches.forEach((match, groupIndex) => { // it finds the correct matches. }); } </script>

Quiero resaltar las coincidencias en el texto envolviendo cada coincidencia en un elemento <span> con algo de estilo

Al principio intenté usar content.replace(//..) y luego document.getElementById('contenteditable').textContent = content; u otros métodos que usan innerHTML , pero se dio cuenta de que simplemente vuelve a cargar todo y no permite que el usuario siga escribiendo en el div contenteditable .

Entonces, creo que la única forma de hacerlo es obtener la posición de cada coincidencia y reemplazar cada ocurrencia por sí sola.

Así que encontré esta publicación: obtenga el inicio y el final de un rango en relación con su contenedor principal

Pero incluso si tengo la posición de intercalación para cada partido, ¿cómo puedo reemplazar solo eso? ¿Hay alguna forma menos complicada de reemplazar las coincidencias "sobre la marcha" (mientras el usuario sigue escribiendo sin interrumpirlo), o tiene que hacerse de estas formas complicadas?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda