Secuencias de barra inclinada invertida

Al construir expresiones regulares, el carácter de barra inclinada invertida puede utilizarse en una variedad de formas.

El carácter de barra inclinada invertida (\) puede utilizarse para:
  • Desactivar el significado especial de los metacaracteres de modo que se puedan tratar como caracteres normales.
  • Incluir caracteres no imprimibles en una expresión regular.
  • Dar significado especial para algunos caracteres normales.
  • Especifique referencias a elementos anteriores. Las referencias a elementos anteriores se utilizan para especificar que una subexpresión coincidente anterior se compare de nuevo más tarde.
Nota: El carácter de barra inclinada invertida no puede ser el último carácter de una expresión regular.

Cuando se escribe una expresión regular en SQL, el analizador SQL procesa en primer lugar los literales de serie antes de pasarlos a la biblioteca de expresiones regulares. El analizador SQL procesa las secuencias de barras inclinadas invertidas de manera que la biblioteca de expresiones regulares no vea posteriormente barras invertidas individuales. Por lo tanto, cuando escriba una expresión regular en SQL, utilice barras inclinadas invertidas como caracteres de escape para los caracteres reservados.

Por ejemplo, para incluir caracteres de escape para los paréntesis de la serie '1_(22)', utilice esta expresión: '1_\\(22\\)'.

La tabla siguiente describe cómo especificar las secuencias de barra inclinada invertida para caracteres no imprimibles y de referencias a elementos anteriores. Esta tabla también muestra cómo utilizar secuencias de barra inclinada invertida para aplicar una significado especial para algunos caracteres normales.

Tabla 1. secuencias de barra inclinada invertida
Secuencia de barra inclinada invertida Descripción
\a Coincide con el carácter de campana (código ASCII 7).
\e Coincide con el carácter de escape (código ASCII 27).
\f Coincide con el carácter de alimentación de papel (código ASCII 12).
\n Coincide con el carácter de nueva línea o salto de línea (códigos ASCII 10).
\r Coincide con el carácter de retorno de carro (código ASCII 13).
\t Coincide con el carácter de tabulador horizontal (código ASCII 9).
\v Coincide con el carácter de tabulador vertical.
\< Coincide con el principio de una palabra, o el principio de un identificador, que se define como el límite entre alfanuméricos y no alfanuméricos (incluyendo el carácter de subrayado). Esto no coincide con caracteres, sólo el contexto.
\> Coincide con el fin de una palabra o identificador.
\b Coincide con un límite de palabra; es decir, coincide con la serie vacía al principio o al final de una secuencia de caracteres alfanuméricos.

Habilita la búsqueda 'sólo palabras completas'.

\B Coincide con un límite que no es de palabra; es decir, no coincide con la serie vacía al principio o al final de una palabra.
\d Coincide con cualquier dígito decimal.

Equivalente a [0-9] y [[:digit:]].

\D Coincide con cualquier carácter no digital.

Equivalente a [^0-9] o [^[:digit:]].

\s Coincide con cualquier carácter de espacio en blanco.

Equivalente a [ \t\n\r\f\v] o [[:espacio:]].

\S Coincide con cualquier carácter que no sea de espacio en blanco.

Equivalente a [^ \t\n\r\f\v] o [^[:space:]].

\w Coincide con un carácter de palabra; es decir, cualquier carácter alfanumérico o el subrayado.

Equivalente a [a-zA-Z0-9_] o [[:alnum:]_].

\W Coincide con cualquier carácter no alfanumérico.

Equivalente a [^a-zA-Z0-9_] o [^[:alnum:]_].

\[1-9] Una barra inclinada invertida seguida de un dígito decimal no cero individual n se la considera referencia a elementos anteriores.

Coincide con el mismo conjunto de caracteres coincidente con la subexpresión entre paréntesis n th.

Ejemplo de construcciones barra inclinada invertida

\bcat\b coincide con cat pero no con cats ni bobcat.

\d\s coincide con un dígito seguido de un carácter de espacio en blanco.

.([XY]).([XY]). coincide con aXbXc y aYbYc, pero también con aXbYc y aYbXc. Sin embargo, .([XY]).\1. sólo coincidirá con aXbXc y aYbYc.

Nota: Las construcciones de barra inclinada invertida no conservan su significado especial dentro de expresiones entre corchetes. Una expresión como por ejemplo [\d] no se puede utilizar para la coincidencia de dígitos.