Fonction Excel : REGEX.TEST (3/3)
Texte contenant une valeur puis une autre
La regex "regex.*amusant" vérifie si le texte contient "regex" puis "amusant" plus loin sur la même ligne :
=REGEX.TEST(A2;"regex.*amusant")

Parenthèses
La regex "^\d{4}-\d{4}-\d{4}-\d{4}$" vérifie ici si le texte correspond exactement à la structure souhaitée (soit 4x 4 chiffres séparés par des "-") :
=REGEX.TEST(A2;"^\d{4}-\d{4}-\d{4}-\d{4}$")

Vous pouvez remarquer que l'expression -\d{4} est présente 3 fois de suite. Pour indiquer que cette partie doit être répétée 3 fois, ajoutez des parenthèses suivi d'un quantificateur (-\d{4}){3}.
La regex devient donc "^\d{4}(-\d{4}){3}$" :
=REGEX.TEST(A2;"^\d{4}(-\d{4}){3}$")

Parenthèses et alternatives
La regex "^https://(www\.)?(excel|sheets)-pratique\.com" vérifie si le texte est une URL du site "excel-pratique.com" ou "sheets-pratique.com" :
Pour valider cette regex le texte doit :
- ^https:// : commencer par "https://"
- (www\.)? : être suivi ou non par "www."
- (excel|sheets) : être suivi par "excel" ou "sheets"
- -pratique\.com : être suivi par "-pratique.com"
=REGEX.TEST(A2;"^https://(www\.)?(excel|sheets)-pratique\.com")

REGEX.TEST
La fonction REGEX.TEST renvoie VRAI ou FAUX, vous pouvez donc combiner cette fonction avec d'autres pour retourner des valeurs différentes.
Par exemple avec la fonction SI :
=SI(REGEX.TEST(A2;"^https://(www\.)?(excel|sheets)-pratique\.com");"URL valide :-)";"URL invalide ...")
Vous pouvez même vous en servir avec vos mises en forme conditionnelles :
Assertions
Les assertions permettent de vérifier une condition autour d'une expression.
Remplacez ici les "..." par l'expression utile :
- (?=...) : doit être suivi par
- (?!...) : ne doit pas être suivi par
- (?<=...) : doit être précédé par
- (?<!...) : ne doit pas être précédé par
La regex "\w+(?=,)" vérifie s'il n'y a au moins un mot de 1 ou plusieurs caractères directement suivi par une virgule :
=REGEX.TEST(A2;"\w+(?=,)")

Références arrière
Les références arrière permettent de réutiliser un morceau de texte capturé plus tôt dans la regex.
Lorsque vous mettez une partie de l'expression entre (), elle devient un groupe capturant, et vous pouvez y faire référence plus tard avec \1, \2, etc., selon l'ordre des groupes.
La regex "(\b\w+\b).*\b\1\b" vérifie si un mot est présent au moins 2 fois (pour rappel, \b permet de délimiter le début et la fin d'un mot) :
=REGEX.TEST(A2;"(\b\w+\b).*\b\1\b";1)

Fonction REGEX.REMPLACER
La fonction REGEX.REMPLACER effectue des remplacements dans le texte en fonction d'une regex.
Des exemples d'utilisation sont disponibles sur la page de la fonction REGEX.REMPLACER.
Fonction REGEX.EXTRAIRE
La fonction REGEX.EXTRAIRE extrait une ou plusieurs parties du texte en fonction d'une regex.
Des exemples d'utilisation sont disponibles sur la page de la fonction REGEX.EXTRAIRE.

