|Expresiones regulares simplificadasMaster
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 20:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Expresiones regulares simplificadas

Master100 pts·Algoritmos

Enunciado

Expresiones regulares simplificadas

Implementa un motor de expresiones regulares que soporte los siguientes patrones:

  • . — coincide con cualquier carácter individual.
  • * — coincide con cero o más del elemento anterior.

Dada una cadena text y un patrón pattern, devuelve true si el patrón coincide con la cadena completa.

Pista: la solución óptima usa programación dinámica en O(m × n).

Ejemplos

regexMatch("aa", "a")          // false — "a" solo coincide con un carácter
regexMatch("aa", "a*")         // true  — "a*" puede repetir "a" las veces necesarias
regexMatch("ab", ".*")         // true  — ".*" coincide con cualquier cadena
regexMatch("aab", "c*a*b")     // true  — c*(cero c) + a*(dos a) + b
regexMatch("mississippi", "mis*is*p*.") // false
regexMatch("", "a*")           // true  — "a*" puede repetir cero veces

Restricciones

  • 0 ≤ text.length ≤ 20
  • 1 ≤ pattern.length ≤ 30
  • text contiene solo letras minúsculas a–z.
  • pattern contiene solo letras minúsculas a–z, . y *.
  • Se garantiza que * nunca es el primer carácter del patrón.
  • Se garantiza que * nunca aparece después de otro *.
Restriccionesexpand_more
  • Dificultad: Master
  • Completa todos los test cases para obtener los 100 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar console.log() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar
Expresiones regulares simplificadas — Master | Coding Challenges · Coding Challenges