Skip to content
Volver arriba

# Expresiones regulares

Las expresiones regulares describen patrones en cadenas que se pueden utilizar para determinar si un patrón dado ocurre en un texto o no.

En TreeSize, se pueden utilizar expresiones regulares para encontrar archivos y / o carpetas específicos que coincidan con los criterios especificados por las expresiones regulares. Se admite una lista de caracteres especiales.

La siguiente tabla muestra algunas de las sintaxis más utilizadas y proporciona algunos ejemplos:

Expresión | Sintaxis | Descripción | Ejemplo
--- | --- | --- | ---
Cualquier carácter | `.` | Coincide con cualquier carácter único, excepto un salto de línea. | `a.o` coincide con «aro» en «around» y «abo» en «about», pero no con «acro» en «across».
Cero o más | `*` | Coincide con cero o más ocurrencias de la expresión anterior y realiza todas las coincidencias posibles. | `a*b` coincide con «b» en «bat» y «ab» en «about». `e.*e` coincide con la palabra «enterprise».
Uno o más | `+` | Coincide con al menos una ocurrencia de la expresión anterior. | `ac+` coincide con palabras que contienen la letra «a» y al menos una instancia de «c», como «race» y «ace». `a.+s` coincide con la palabra «access».
Inicio de la cadena | `^` | Coincide con el inicio de una cadena. | `^[0-9]` coincide con cadenas que comienzan con un dígito.
Fin de la cadena | `$` | Coincide con el final de una cadena. | `exe$` coincide con cadenas que terminan en «exe».
Inicio de la palabra | `[[:<:]]` | Coincide solo cuando una palabra comienza en este punto del texto. | `[[:<:]]in` coincide con palabras como «inside» y «into» que comienzan con las letras «in».
Fin de la palabra | `[[:>:]]` | Coincide solo cuando una palabra termina en este punto del texto. | `ss[[:>:]]` coincide con palabras como «across» y «loss» que terminan con las letras «ss».
Cualquier carácter en el conjunto | `[]` | Coincide con cualquiera de los caracteres en los []. Para especificar un rango de caracteres, enumere los caracteres inicial y final separados por un guion (-), como en [a-z]. | `be[n-t]` coincide con «bet» en «between», «ben» en «beneath» y «bes» en «beside», pero no con «bel» en «below».
Cualquier carácter que no esté en el conjunto | `[^...]` | Coincide con cualquier carácter que no esté en el conjunto de caracteres que sigue al `^`. | `be[^n-t]` coincide con «bef» en «before», «beh» en «behind» y «bel» en «below», pero no con «ben» en «beneath».
O | `|` | Coincide con la expresión anterior o con la que sigue al símbolo OR (|). Se utiliza principalmente en un grupo. | `(sponge|mud)` coincide con «baño de esponja» y «baño de barro».
Carácter de escape | `\` | Coincide con el carácter que sigue a la barra invertida (`\`) como un literal. Esto permite encontrar los caracteres que se utilizan en la notación de expresiones regulares, como `{` y `^`. | `\^` busca el carácter `^`.
Repetir n veces | `{n}` | Coincide con n ocurrencias de la expresión precedente. | `[0-9]{4}` coincide con cualquier secuencia de 4 dígitos.
Agrupación | `()` | Permite agrupar un conjunto de expresiones. Si desea buscar dos expresiones diferentes en una sola búsqueda, puede utilizar la expresión de Agrupación para combinarlas. | Si desea buscar `[a-z][1-3]` o `[0-9][a-z]`, las combinaría: `([a-z][1-3])|([0-9][a-z])`.

## Más ejemplos

Expresión Regular | Caso de uso
--- | ---
`[0-9]` o `\d` | Encuentra todos los archivos/carpetas con al menos un dígito en su nombre.
`a|b` | Encuentra todos los archivos/carpetas que contengan «a» o «b» en su nombre.
`[^(A-Za-z)]` | Encuentra todos los archivos/carpetas que contengan al menos un carácter en su nombre que no esté en el rango A-Z o a-z.
`^E[0-9]{7}$` | Encuentra todos los archivos/carpetas que comienzan con una «E» seguida de exactamente 7 dígitos.
`[A-Za-z]:\\([^\\]+\\){2,4}[^\\]+$` | Encuentra todos los archivos/carpetas con una profundidad de carpeta de al menos 2 y como máximo 4.
`[^\x00-\x7F]` | Encuentra todos los archivos/carpetas con caracteres ASCII inválidos.
`[^\P{C}]` | Encuentra todos los archivos/carpetas con caracteres Unicode que no se pueden imprimir.
`[\xA0]` | Encuentra todos los nombres de archivos/carpetas que contengan el carácter de espacio no separable (Unicode NOBR, U+00A0) en lugar de un carácter de espacio normal.
`[~\""#%&\*\:<>\?\/\\{|}]` | Encuentra todos los nombres de archivos y carpetas que contengan caracteres que son inválidos en servidores de SharePoint.
`^\s+.*` | Encuentra todos los archivos y carpetas con un espacio al principio.
`\s+(\.[^.]+)$` | Encuentra archivos con una extensión que tengan un espacio al final de su nombre.
`.*\s+$` | Encuentra carpetas con un espacio al final de su nombre.

## Herramientas para crear expresiones regulares

https://regex101.com/ (en línea)

http://regexpal.com/ (en línea)

http://sourceforge.net/projects/regexpeditor/ (descarga)

http://sourceforge.net/projects/regextester/ (descarga)

http://sourceforge.net/projects/regaxe/ (descarga)