As expresións regulares (ou regex para acortar) empregadas nas buscas e regras de segmentación son as compatíbeis con Java. En caso de necesitar información máis específica, consulte a Documentación sobre Regex de Java. Vexa referencias adicionais e exemplos máis adiante.
Note
Este capítulo está pensado para usuarios avanzados, que necesitar definir as súas propias variantes de regras de segmentación ou que necesitan facer buscas máis complexas e exhaustivas.
Table 20. Regex - Bandeiras
A construción |
... coincide coa seguinte |
(?i) |
Permite coincidencias que non teñan en conta as maiúsculas e minúsculas (de xeito predeterminado, o padrón ten en conta as maiúsculas e minúsculas). |
Table 21. Regex - Carácter
A construción |
... coincide coa seguinte |
x |
O carácter x, excepto o seguinte... |
\uhhhh |
O carácter con valor hexadecimal 0xhhhh |
\t |
O carácter de tabulación ('\u0009') |
\n |
O carácter de nova liña ('\u000A') |
\r |
O carácter de retorno de carro ('\u000D') |
\f |
O carácter de alimentación de folla ('\u000C') |
\a |
O carácter alerta (campá) ('\u0007') |
\e |
O carácter de escape ('\u001B') |
\cx |
O carácter de control correspondente a x |
\0n |
O carácter con valor octal 0n (0 <=n <=7) |
\0nn |
O carácter con valor octal 0nn (0 <=n <=7) |
\0mnn |
O carácter con valor octal 0mnn (0 <=m <=3, 0 <= n <=7) |
\xhh |
O carácter con valor hexadecimal 0xhh |
Table 22. Regex - Citación
A construción |
... coincide coa seguinte |
\ |
Nada, mais cita o seguinte carácter. Isto é necesario se quere inserir calquera dos meta caracteres !$()*+.<>?[\]^{|} e que coincidan con eles mesmos. |
\\ |
Por exemplo, este é o carácter de barra invertida |
\Q |
Nada, mais cita a todos os caracteres ata \E |
\E |
Nada, mais termina citas iniciadas por \Q |
Table 23. Regex - Clases para bloques e categorías Unicode
A construción |
... coincide coa seguinte |
\p{InGreek} |
Un carácter no bloque Grego (bloque simple) |
\p{Lu} |
Unha letra maiúscula (categoría simple) |
\p{Sc} |
Un símbolo de divisa |
\P{InGreek} |
Calquera carácter excepto un do bloque grego (negación) |
[\p{L}&&[^\p{Lu}]] |
Calquera letra excepto unha letra en maiúscula (subtracción) |
Table 24. Regex - Clases de caracteres
A construción |
... coincide coa seguinte |
[abc] |
a, b ou c (clase simple) |
[^abc] |
Calquera carácter excepto a, b ou c (negación) |
[a-zA-Z] |
Desde o a ata o z ou A ata Z, inclusive (rango) |
Table 25. Regez - Clases predeterminadas de caracteres
A construción |
... coincide coa seguinte |
. |
Calquera carácter (excepto os finalizadores de liña) |
\d |
Un díxito: [0-9] |
\D |
Un non díxito: [^0-9] |
\s |
Un carácter de espazo en branco: [ \t\n\x0B\f\r] |
\S |
Un espazo de non espazo en branco: [^\s] |
\w |
Un carácter de palabra: [a-zA-Z_0-9] |
\W |
Un carácter de non palabra: [^\w] |
Table 26. Regex - Límite de coincidencias
A construción |
... coincide coa seguinte |
^ |
O comezo dunha liña |
$ |
O fin dunha liña |
\b |
En los límites de una palabra |
\B |
Nos límites dun carácter non constituínte de palabra |
Table 27. Regex - Cuantificadores cobizosos
A construción |
... coincide coa seguinte |
X
?
|
X, unha vez ou nunca |
X
*
|
X, cero ou máis veces |
X
+
|
X, unha ou máis veces |
Note
os cuantificadores cobizosos coincidirán tanto coma sexa posíbel. Por exemplo,
a+?
debe coincidir con aaa en
aaabbb
Table 28. Regex - Cuantificadores tímidos (non cobizosos)
A construción |
... coincide coa seguinte |
X?? |
X, unha vez ou nunca |
X*? |
X, cero ou máis veces |
X+? |
X, unha ou máis veces |
Note
os cuantificadores non cobizosos coincidirán o mínimo posíbel. Por exemplo,
a+?
debe coincidir coa primeira
a
en
aaabbb
Table 29. Regex - operadores lóxicos
A construción |
... coincide coa seguinte |
XY |
X seguido de Y |
X|Y |
Tanto X como Y |
(XY) |
XY coma un grupo indivisíbel |