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

106
Vistas
Regex coincide con las fechas en una cadena en Javascript

Siguiendo con este hilo, estoy tratando de hacer que esto funcione

Expresión regular de JavaScript para hacer coincidir solo X dígitos

 string = '2016-2022' re = /\d{4}/g result = [...string.matchAll(re)]

Esto devuelve una matriz de dos matrices. ¿Hay alguna manera de consolidar esto en 1 matriz?

Sin embargo, no parece que esto esté devolviendo los resultados deseados.

Soy nuevo en la expresión regular. ¿Qué estoy haciendo mal?

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

esto devuelve una serie de coincidencias

 result = string.match(re)
about 4 years ago · Juan Pablo Isaza Denunciar

0

Esta es una función para analizar la cadena que codifica esos valores de dos años y devolver los años internos como elementos de una matriz:

 let o = parseYearsInterval('2016-2022'); console.log(o); function parseYearsInterval(encodedValue){ var myregexp = /(\d{4})-(\d{4})/; var match = myregexp.exec(encodedValue); if (match != null) { let d1 = match[1]; let d2 = match[2]; //return `[${d1}, ${d2}]`; let result = []; result.push(d1); result.push(d2); return result; } else { return "not valid input"; } }

Creo que hay mejores formas de hacerlo, como dividir la cadena contra el separador "-" y devolver ese valor como es:

 console.log ( "2016-2022".split('-') )

about 4 years ago · Juan Pablo Isaza Denunciar

0

 var str = '2016-2022'; var result = []; str.replace(/\d{4}/g, function(match, i, original) { result.push(match); return ''; }); console.log(result);

También quería mencionar que matchAll básicamente no hace nada más que un tiempo ejecutivo, es por eso que obtienes 2 matrices, puedes hacerlo tú mismo en un ciclo de tiempo y simplemente guardar lo que necesitas.

 var result = []; var matches; var regexp = /\d{4}/g; while (matches = regexp.exec('2016-2022')) result.push(matches[0]); console.log(result);

about 4 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 Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda