Provided by: manpages-es-extra_0.8a-16_all bug

NOMBRE

       regex - expresiones regulares

DESCRIPCIÓN

       Una  expresión regular es un patrón que describe un conjunto de cadenas
       de caracteres. Las expresiones regulares se construyen de forma análoga
       a   las   aritméticas,  empleándose  varios  operadores  para  combinar
       expresiones más pequeñas.

       Hay  dos  versiones  diferentes  de  la  sintaxis  de  las  expresiones
       regulares:    la    ‘‘básica’’   y   la   ‘‘extendida’’.   En   algunas
       implementaciones  (como  en  la  del  grep  de  GNU),  no  hay  ninguna
       diferencia  entre  las  dos en cuanto a la funcionalidad disponible con
       cada una. En otras implementaciones, las expresiones regulares  básicas
       son   menos   potentes.  La  descripción  siguiente  se  aplica  a  las
       expresiones regulares extendidas; las diferencias con  las  básicas  se
       resumen después.

       Los bloques de construcción fundamentales son las expresiones regulares
       que concuerdan con un solo carácter.  La  mayoría  de  los  caracteres,
       incluyendo  todas  las  letras y los dígitos, son expresiones regulares
       que  concuerdan  consigo  mismos.  Cualquier   meta-carácter   con   un
       significado  especial  puede  ser protegido precediéndolo con una barra
       inclinada inversa.

       Una lista de caracteres rodeados por [  y  ]  concuerda  con  cualquier
       carácter solo de los de la lista; pero si el primer carácter de ella es
       el acento circunflejo ^ entonces concuerda con cualquier  carácter  que
       no  esté  en  la lista.  Por ejemplo, la expresión regular [0123456789]
       concuerda con cualquier  dígito.  Se  puede  especificar  un  rango  de
       caracteres  ASCII dando el primero y el último, separados por un guión.
       Finalmente, ciertas clases de caracteres tienen nombres predefinidos, y
       uno   puede  referirse  a  ellas  por  éstos.  Los  nombres  son  auto-
       explicativos, y son los siguientes:  [:alnum:],  [:alpha:],  [:cntrl:],
       [:digit:],   [:graph:],  [:lower:],  [:print:],  [:punct:],  [:space:],
       [:upper:], y [:xdigit:].  Por ejemplo, [[:alnum:]] significa  [0-9A-Za-
       z],  excepto  en  que  la  última  forma  depende  de  que  se  use  la
       codificación  de  caracteres  ASCII,  mientras  que   la   primera   es
       transportable.   (Note que en estos nombres de clases los corchetes son
       parte de los nombres simbólicos, y deben incluirse aparte  de  los  que
       delimiten  la lista entre corchetes.) La mayoría de los meta-caracteres
       pierden su significado especial cuando están  dentro  de  listas.  Para
       incluir un ] literal, póngase el primero de la lista. De forma similar,
       para incluir un ^ literal, póngase en cualquier posición  menos  en  la
       primera. Finalmente, para incluir un - literal, póngase el último.

       El  punto  .   concuerda  con  cualquier carácter.  El símbolo \w es un
       sinónimo de [[:alnum:]] y \W lo es de [^[:alnum]].

       El acento circunflejo ^ y el signo del dólar (o del escudo portugués) $
       son  meta-caracteres que concuerdan respectivamente con la cadena vacía
       al principio y al final de una línea.  Los símbolos \< y \>  concuerdan
       respectivamente  con  la  cadena  vacía  al principio y al final de una
       palabra.  El símbolo \b concuerda con la cadena vacía al borde  de  una
       palabra, y \B concuerda con la cadena vacía si no está en el extremo de
       una palabra.

       A una expresión regular que concuerde con un solo carácter puede seguir
       uno de los varios operadores de repetición:
       ?      El  elemento  precedente es opcional y concordaba como mucho una
              vez.
       *      El elemento precedente concordará cero o más veces.
       +      El elemento precedente concordará una o más veces.
       {n}    El elemento precedente va a concordar exactamente n veces.
       {n,}   El elemento precedente ha concordado n o más veces.
       {,m}   El elemento precedente es opcional y ha concordado como mucho  m
              veces.
       {n,m}  El  elemento precedente ha concordado como poco n veces, pero no
              más de m veces.

       Dos expresiones regulares pueden  concatenarse;  la  expresión  regular
       resultante  concuerda con cualquier cadena de caracteres formada por la
       concatenación de dos subcadenas que concuerden respectivamente con  las
       subexpresiones concatenadas.

       Dos expresiones regulares pueden juntarse por medio del operador infijo
       |; la expresión regular resultante concuerda con cualquier  cadena  que
       lo haga con cualquiera de las subexpresiones.

       La  repetición  tiene  precedencia sobre la concatenación, la cual a su
       vez la tiene  sobre  la  alternancia.  Una  subexpresión  entera  puede
       encerrarse entre paréntesis para modificar estas reglas de precedencia.

       La retrorreferencia \n, donde n es un solo  dígito,  concuerda  con  la
       subcadena  que  previamente concordaba con la n-sima subexpresión entre
       paréntesis de la expresión regular.

       En las expresiones regulares básicas, los meta-caracteres ?, +,  {,  |,
       (,  y  )  pierden  su  significado  especial;  en  su  lugar emplee las
       versiones protegidas por la barra inclinada inversa \?, \+, \{, \|, \(,
       y \).

OBSERVACIÓN

       Esta  página  del  Manual  de  Debian/GNU Linux se ha extraído de la de
       grep(1).

VÉASE TAMBIÉN

       regcomp(3), grep(1)