Fonction Excel : REGEX.TEST

La fonction REGEX.TEST vérifie si une partie d'un texte correspond à une expression régulière et renvoie la valeur VRAI ou FAUX en fonction de ce test.

L'utilisation d'une expression régulière (ou "regex") permet de réaliser des tests complexes avec une formule courte et efficace.

Elle permet par exemple de vérifier la validité d'un numéro de téléphone ou d'une adresse email, si un texte contient certaines valeurs, si un texte respecte une structure définie, etc.

Utilisation :

=REGEX.TEST(texte; regex)

ou :

=REGEX.TEST(texte; regex; casse)


Comprendre les expressions régulières

L'écriture d'une expression régulière peut sembler complexe et être assez décourageante au premier abord.

Pour vous aider à mieux les appréhender, vous trouverez sur cette page (et les suivantes) une série d'exemples utilisant des expressions régulières, par ordre croissant de difficulté.

Texte contenant

La regex "expression" recherche ce mot à l'intérieur du texte.

=REGEX.TEST(A2;"expression")

La fonction REGEX.TEST retourne ensuite VRAI ou FAUX en fonction du résultat :

excel fonction regex test rechercher mot

Texte commençant par

La regex "^C'est" vérifie si le texte commence par "C'est" :

=REGEX.TEST(A2;"^C'est")

excel fonction regex test rechercher mot debut

Le caractère ^ placé en début de regex indique que le texte doit commencer par cette expression.

Texte se terminant par

La regex "te$" vérifie si le texte se termine par "te" :

=REGEX.TEST(A2;"te$")

excel fonction regex test rechercher mot fin

Le caractère $ placé en fin de regex indique que le texte doit finir par ce mot.

Alternatives de texte

La regex "press|ion" vérifie si le texte contient "press" ou "ion" :

=REGEX.TEST(A2;"press|ion")

excel fonction regex test rechercher mot ou

Le caractère | indique une alternative (l'équivalent d'un "ou").

Caractères autorisés

Les classes de caractères sont définies entre [] et indiquent quels sont les caractères autorisés. Par exemple, la classe [abc] signifie que le caractère peut être soit "a", "b" ou "c".

La regex "[aeiouy]tion" vérifie donc si le texte contient une voyelle suivie de "tion" :

=REGEX.TEST(A2;"[aeiouy]tion")

excel fonction regex test classe caracteres

Une classe de caractères (par exemple [abc]) correspond à un seul caractère dans la recherche.

Plage de caractères autorisés

Pour éviter de lister l'alphabet entier dans une classe de caractères, il est possible de préciser des plages de caractères à l'aide du caractère -.

Par exemple :

La regex "^[A-Z][1-6]" vérifie si le texte commence par une lettre en majuscule suivie d'un chiffre de 1 à 6 :

=REGEX.TEST(A2;"^[A-Z][1-6]")

excel fonction regex test classe caracteres plages

Caractères non autorisés

Pour préciser une négation (autrement dit, "tous les caractères sauf"), ajoutez un ^ au début de la classe.

La regex "[^6-9]$" vérifie si le texte se termine par n'importe quel caractère sauf un chiffre dans la plage 6 à 9 :

=REGEX.TEST(A2;"[^6-9]$")

excel fonction regex test classe caracteres negation