Skip to content
Retour au début de la page

# Expressions régulières

Les expressions régulières décrivent des motifs dans des chaînes qui peuvent être utilisés pour déterminer si un motif donné se produit dans un texte ou non.

Dans TreeSize, les expressions régulières peuvent être utilisées pour trouver des fichiers et / ou des dossiers spécifiques qui correspondent aux critères spécifiés par les expressions régulières. Une liste de caractères spéciaux est prise en charge.

Le tableau suivant montre certaines des syntaxes les plus utilisées et fournit quelques exemples :

Expression | Syntaxe | Description | Exemple
--- | --- | --- | ---
Tout caractère | `.` | Correspond à n’importe quel caractère unique, sauf un saut de ligne. | `a.o` correspond à « aro » dans « around » et « abo » dans « about », mais pas à « acro » dans « across ».
Zéro ou plusieurs | `*` | Correspond à zéro ou plusieurs occurrences de l’expression précédente et fait toutes les correspondances possibles. | `a*b` correspond à « b » dans « bat » et « ab » dans « about ». `e.*e` correspond au mot « enterprise ».
Un ou plusieurs | `+` | Correspond à au moins une occurrence de l’expression précédente. | `ac+` correspond à des mots contenant la lettre « a » et au moins une instance de « c », tels que « course » et « as ». `a.+s` correspond au mot « accès ».
Début de chaîne | `^` | Correspond au début d’une chaîne. | `^[0-9]` correspond à des chaînes qui commencent par un chiffre.
Fin de chaîne | `$` | Correspond à la fin d’une chaîne. | `exe$` correspond à des chaînes qui se terminent par « exe ».
Début de mot | `[[:<:]]` | Correspond uniquement lorsque un mot commence à ce point dans le texte. | `[[:<:]]in` correspond à des mots tels que « intérieur » et « dans » qui commencent par les lettres « in ».
Fin de mot | `[[:>:]]` | Correspond uniquement lorsque un mot se termine à ce point dans le texte. | `ss[[:>:]]` correspond à des mots tels que « à travers » et « perte » qui se terminent par les lettres « ss ».
N’importe quel caractère dans l’ensemble | `[]` | Correspond à n’importe lequel des caractères dans les []. Pour spécifier une plage de caractères, listez les caractères de début et de fin séparés par un tiret (-), comme dans [a-z]. | `be[n-t]` correspond à « bet » dans « between », « ben » dans « beneath », et « bes » dans « beside » mais pas « bel » dans « below ».
Tout caractère qui n’est pas dans l’ensemble | `[^...]` | Correspond à tout caractère qui n’est pas dans l’ensemble de caractères qui suit le `^`. | `be[^n-t]` correspond à « bef » dans « before », « beh » dans « behind », et « bel » dans « below », mais pas « ben » dans « beneath ».
Ou | `|` | Correspond soit à l’expression avant soit à celle après le symbole OU (|). Principalement utilisé dans un groupe. | `(sponge|mud)` correspond à « sponge bath » et « mud bath ».
Caractère d’échappement | `\` | Correspond au caractère qui suit le backslash (`\`) comme un littéral. Cela vous permet de trouver les caractères utilisés dans la notation des expressions régulières, tels que `{` et `^`. | `\^` recherche le caractère `^`.
Répéter n fois | `{n}` | Correspond à n occurrences de l’expression précédente. | `[0-9]{4}` correspond à toute séquence de 4 chiffres.
Regroupement | `()` | Vous permet de regrouper un ensemble d’expressions ensemble. Si vous souhaitez rechercher deux expressions différentes dans une seule recherche, vous pouvez utiliser l’expression de regroupement pour les combiner. | Si vous souhaitez rechercher `[a-z][1-3]` ou `[0-9][a-z]`, vous les combineriez : `([a-z][1-3])|([0-9][a-z])`.

## Plus d’exemples

Expression régulière | Cas d’utilisation
--- | ---
`[0-9]` ou `\d` | Trouver tous les fichiers/dossiers contenant au moins un chiffre dans leur nom.
`a|b` | Trouver tous les fichiers/dossiers contenant « a » ou « b » dans leur nom.
`[^(A-Za-z)]` | Trouver tous les fichiers/dossiers contenant au moins un caractère dans leur nom qui n’est pas dans la plage A-Z ou a-z.
`^E[0-9]{7}$` | Trouver tous les fichiers/dossiers qui commencent par un « E » suivi exactement de 7 chiffres.
`[A-Za-z]:\\([^\\]+\\){2,4}[^\\]+$` | Trouver tous les fichiers/dossiers avec une profondeur de dossier d’au moins 2 et au plus 4.
`[^\x00-\x7F]` | Trouver tous les fichiers/dossiers avec des caractères ASCII invalides.
`[^\P{C}]` | Trouver tous les fichiers/dossiers avec des caractères Unicode qui ne peuvent pas être imprimés.
`[\xA0]` | Trouver tous les noms de fichiers/dossiers contenant le caractère d’espace insécable (Unicode NOBR, U+00A0) au lieu d’un espace normal.
`[~\""#%&\*\:<>\?\/\\{|}]` | Trouver tous les noms de fichiers et de dossiers contenant des caractères qui sont invalides sur les serveurs SharePoint.
`^\s+.*` | Trouver tous les fichiers et dossiers avec un espace au début.
`\s+(\.[^.]+)$` | Trouver des fichiers avec une extension qui ont un espace à la fin de leur nom.
`.*\s+$` | Trouver des dossiers avec un espace à la fin de leur nom.

## Outils pour créer des expressions régulières

https://regex101.com/ (en ligne)

http://regexpal.com/ (en ligne)

http://sourceforge.net/projects/regexpeditor/ (téléchargement)

http://sourceforge.net/projects/regextester/ (téléchargement)

http://sourceforge.net/projects/regaxe/ (téléchargement)