Construyendo Expresiones Regulares

Las expresiones regulares (o regex para abreviar) utilizadas en las búsquedas y reglas de segmentación son compatibles con Java. Si necesita información más específica, por favor consulte http://java.sun.com/j2se/1.5/docs/api/java/util/regex/Pattern.html. Vea referencias adicionales y los siguientes ejemplos. 

Indicadores

Caracteres

Citando

Clases para bloques Unicode y categorías

Clases de caracteres

Clases de caracteres predefinidos

Límite de coincidencias

Cuantificadores codiciosos

Cuantificadores tímidos (no codiciosos)

Operadores lógicos

Herramientas Regex y ejemplos de uso

    

 


La construcción...

...coincide con el siguiente texto:


Indicadores

(?i)

Habilita la coincidencia de mayúsculas y minúsculas (de manera predeterminada, el patrón distingue entre mayúsculas y minúsculas).


Caracteres

x

El caracter x, salvo en la siguiente...

\uhhhh

El caracter con valor hexadecimal 0xhhhh

\t

El caracter de tabulación ('\u0009')

\n

El caracter de nueva línea (line feed) ('\u000A')

\r

El caracter de retorno de carro ('\u000D')

\f

El caracter de alimentación de hoja ('\u000C')

\a

El caracter alerta (campana) ('\u0007')

\e

El caracter escape ('\u001B')

\cx

El caracter de control correspondiente a x

\0n

El caracter con valor octal de 0n (0 <= n <= 7)

\0nn

El caracter con valor octal de 0nn (0 <= n <= 7)

\0mnn

El caracter octal con valor de 0mnn (0 <= m <= 3, 0 <= n <= 7)

\xhh

El caracter hexadecimal con valor 0xhh


Citando

\

Nada, pero cita el siguiente caracter. Este se requiere si desea ingresar los caracteres meta !$()*+.<>?[\]^{|} para que coincidan con ellos mismos.

\\

Por ejemplo, este es el caracter de barra invertida

\Q

Nada, pero cita a todos los caracteres hasta \E

\E

Nada, pero termina citados iniciados por \Q


Clases para bloques Unicode y categorías

\p{InGreek}

Un caracter en el bloque Griego (bloque simple)

\p{Lu}

Una letra mayúscula (categoría simple)

\p{Sc}

Un símbolo de moneda

\P{InGreek}

Cualquier caracter excepto uno en el bloque Griego (negación)

[\p{L}&&[^\p{Lu}]]

Cualquier letra excepto una letra en mayúscula (sustracción)


Clases de caracteres

[abc]

a, b, o c (clase simple)

[^abc]

Cualquier caracter excepto a, b o c (negación)

[a-zA-Z]

Desde la a hasta la z o A hasta Z, inclusive (rango)


Clases de caracteres predefinidos

.

Cualquier caracter (excepto los terminadores de línea)

\d

Un dígito: [0-9]

\D

Un caracter que no sea dígito: [^0-9]

\s

Un caracter de espacio en blanco: [ \t\n\x0B\f\r]

\S

Un caracter que no sea espacio en blanco: [^\s]

\w

Un caracter constituyente de palabra: [a-zA-Z_0-9]

\W

Un caracter que no sea constituyente de palabra: [^\w]


Límite de coincidencias

^

Al comienzo de una línea

$

Al final de una línea

\b

En los límites de una palabra

\B

En los límites de un caracter no constituyente de palabra


Cuantificadores codiciosos

Estos coinciden con tanto como puedan. Por ejemplo, a+ debe coincidir con aaa en aaabbb

X?

X, una vez o ninguna en absoluto

X*

X, cero o más veces

X+

X, una o más veces


Cuantificadores tímidos (no codiciosos)

Éstos coinciden con tan poco como sea posible. Por ejemplo, a+? debe coincidir la primera a en aaabbb

X??

X, una vez o ninguna en absoluto

X*?

X, cero o más veces

X+?

X, una o más veces


Operadores lógicos

XY

X seguida por Y

X|Y

Cualquier X o Y

(XY)

XY como un solo grupo



Herramientas Regex y ejemplos de uso


Hay una serie de herramientas interactivas para desarrollar y probar expresiones regulares. Todas ellas más o menos siguen el mismo patrón (vea más abajo para un ejemplo en forma de plug-in para Firefox): la expresión regular (primer entrada) analiza el texto de búsqueda (vea el recuadro en el centro), dando consejos, se muestra en el cuadro de texto de resultados.

Probador de expresiones regulares para Firefox plug-in tester

Vea The Regex Coach para las versiones Windows, Linux, Mac, FreeBSD de una herramienta independiente, esta es casi idéntica al ejemplo anterior.

Una buena colección de casos de expresiones regulares muy útiles se puede encontrar en OmegaT mismo (vea Opciones → Segmentación...) La siguiente lista incluye expresiones, que pueden ser útiles cuando se busca a través de la memoria de traducción:

Expresión regular Busca lo siguiente:
(\b\w+\b)\s\1\b
palabras dobles 
[\.,]\s*[\.,]+ t comas y puntos confusos
\. \s$ espacios en blanco extra, tras el punto al final de la línea
\s+a\s+[aeiou]  Inglés: las palabras, que comienzan con vocales, deben estar precedidas por "an" y no "a"
\s+an\s+[^aeiou]  Inglés: la misma comprobación que la anterior, pero para las consonantes ("a", no "an")
\s\s+ más de un espacio
\.[A-Z] espacio faltante entre un punto y el comienzo de una nueva frase



Aviso Legal Inicio Índice de Contenido