Saltar al contenido
uencoder

Regular Expression

Una expresión regular es un lenguaje formal para describir patrones de cadenas, definiendo reglas de coincidencia con metacaracteres y cuantificadores; se usa ampliamente para buscar, validar y extraer.

Propósito

Ofrecer un lenguaje de coincidencia de patrones de cadenas compacto y potente, en sustitución de la lógica de análisis escrita a mano.

Mecanismo

Se compone de caracteres literales y metacaracteres (. * + ? [] () {} \ | ^ $). Los cuantificadores controlan la repetición (* cero o más, + uno o más, ? cero o uno, {n,m} un rango especificado). La agrupación () captura, | alterna, [] es una clase de caracteres y \d \w \s son clases predefinidas. Los motores hacen coincidir mediante backtracking NFA/DFA o autómatas.

Casos de uso

  • Validación de entradas de formularios (correos, teléfonos)
  • Extracción de patrones de logs
  • Buscar y reemplazar (IDEs, sed)
  • Generación de analizadores léxicos

Ejemplos

  • entrada
    /\d{3}-\d{4}/
    Output
    Matches 123-4567

    3 digits-4 digits

Errores comunes

The greedy quantifier .* matches too much
Use the non-greedy .*? or a precise character class

Términos relacionados

Herramientas relacionadas

References