Saltar al contenido principal
eLearner.app
Módulo 5 · Lección 2 de 418/32 en el curso~8 min
Lecciones del módulo (2/4)

Rangos en las clases: `[a-z0-9]`

Enumerar cada carácter uno por uno es tedioso. Las clases aceptan rangos con el guion -: [a-z] coincide con cualquier letra minúscula, [0-9] con un dígito, [A-Z] con una letra mayúscula.

Code
Pattern: [a-z]+
Sample:  Ciao Mondo 123
          ^^s  ^^^^

El rango utiliza el orden del código de carácter (esencialmente ASCII para caracteres latinos): a-z significa "cada carácter desde el código de a hasta el de z", es decir, 26 letras.

Combinar rangos

Dentro de una sola clase puedes mezclar múltiples rangos y caracteres individuales:

Code
[a-zA-Z0-9_]   idéntico a \w (en ASCII)
[a-fA-F0-9]    dígitos hexadecimales
[0-9.]         dígitos o el punto (para números decimales)

El orden no importa: [0-9a-z] y [a-z0-9] son idénticos.

Rangos y orden de caracteres ASCII

Los rangos como [a-z] siguen estrictamente el orden de los caracteres en la tabla ASCII. Escribir un rango no válido, como [z-a], provocará un error de compilación de la regex. Un guion literal debe colocarse al principio o al final: [a-z-].

Pruébalo tú

Ejercicio#regex.m5.l2.e1
Intentos: 0Cargando...

Encuentra cada secuencia hexadecimal de 6 caracteres (ej. el código de color #1a2b3c). Los dígitos van del 0 al 9, las letras de la a a la f (mayúsculas o minúsculas).

Cargando editor...
Mostrar pista

Añade A-F al rango, o usa la flag i.

Solución disponible después de 3 intentos

Ejercicio de repaso

Ejercicio#regex.m5.l2.e2
Intentos: 0Cargando...

Encuentra cada código de producto compuesto por 3 letras mayúsculas seguidas de 4 dígitos (ej. ABC1234).

Cargando editor...
Mostrar pista

Para los dígitos puedes usar \d o el rango [0-9]: este ejercicio requiere [0-9] explícito.

Solución disponible después de 3 intentos

Desafío adicional

Ejercicio#regex.m5.l2.e3
Intentos: 0Cargando...

Encuentra caracteres hexadecimales en el texto (dígitos 0-9 y letras A-F, tanto en mayúsculas como en minúsculas).

Cargando editor...
Mostrar pista

Combina tres rangos: 0-9, a-f, A-F.

Solución disponible después de 3 intentos