Curso de Raku / Expresiones regulares y gramáticas / Expresiones regulares / Literales y clases de caracteres
Clases de caracteres
A menudo no quieres emparejar un carácter fijo, sino cualquier
carácter de un conjunto. Un conjunto así se llama clase de
caracteres y se escribe entre <[ y
]>:
say 'grey' ~~ / gr <[ae]> y /; # 「grey」
say 'gray' ~~ / gr <[ae]> y /; # 「gray」La clase <[ae]> empareja un solo carácter que sea
a o e, así que coinciden las dos grafías del
color.
Dentro de los corchetes puedes indicar un rango con dos puntos:
say 'a1b2' ~~ / <[0..9]> /; # 「1」<[0..9]> empareja cualquier dígito; el primero de
la cadena es 1.
Para emparejar cualquier carácter que no esté en el conjunto, pon un signo menos justo después del corchete de apertura:
say 'stop!' ~~ / <-[a..z]> /; # 「!」Aquí <-[a..z]> empareja el primer carácter que no
es una letra minúscula, que es el signo de exclamación.
Puedes combinar varias piezas en una misma clase. Por ejemplo,
<[a..z A..Z 0..9]> empareja una letra o un dígito.
Los espacios de ahí son solo por legibilidad: como en todo regex, los
espacios dentro de <[…]> se ignoran, así que
<[a..zA..Z0..9]> es exactamente la misma clase.
Práctica
Resuelve 1 cuestionario sobre el contenido de este tema.
Navegación del curso
← Emparejar texto literal | Quiz — Clases propias →
💪 O ve directamente a los ejercicios de esta
sección.