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 |