• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

204
Vistas
Cadena dividida con RegEx (filtrar/eliminar dígitos) - ¿Por qué se incluye el patrón en los resultados?

Aquí se hizo una pregunta similar, pero la entrada y el patrón son diferentes.

El objetivo es convertir una cadena con una lista numerada en fragmentos que contengan el contenido sin los números.

Aporte:

 var string = "3. line A<br>4. line B<br>5. line C<br>6. line3. garbage<br>7. line<br>8. line END";

expresión regular:

 var arr = string.split(/(^\d+\.)|(<br>\d+\.)/).filter(x => x);

Rendimiento esperado:

 array["line A", "line B", "line C", "line3. garbage", "line", "line END"]

Pero la salida en Javascript es en cambio:

 0: "3." 1: " line A" 2: "<br>4." 3: " line B" 4: "<br>5." 5: " line C" 6: "<br>6." 7: " line3. garbage" 8: "<br>7." 9: " line" 10: "<br>8." 11: " line END"

¿Por qué se incluye el patrón en los resultados? En PHP se excluye el patrón, lo esperado, pero no en Javascript.

¿Cómo eliminar el patrón del resultado final?

almost 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Si está buscando una solución de expresión regular pura, sugeriría esta expresión regular para .match :

 /(?<=\s|^)[az][\w.-]*(?:\s+[\w.-]+)*/gmi

Demostración RegEx

Código:

 var string = "3. line A<br>4. line B<br>5. line C<br>6. line3. garbage<br>7. line<br>8. line END"; var m = string.match(/(?<=\s|^)[az][\w.-]*(?:\s+[\w.-]+)*/gmi); console.log(m);

Explicación:

  • (?<=\s|^) : Afirma que el carácter anterior es un espacio en blanco o un comienzo de línea
  • [az] : Coincidir con una letra (ignorar mayúsculas y minúsculas)
  • [\w.-]* : Coincide con 0 o más caracteres de palabra o punto o guión
  • (?:\s+[\w.-]+)* : Coincide con 0 o más palabras separadas por 1+ espacios en blanco
almost 3 years ago · Juan Pablo Isaza Denunciar
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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda