Excel 365Google SheetsTexteIntermédiaire

Fonction REGEXMATCHGuide Complet 2026 avec Exemples

REGEXMATCH (disponible uniquement dans Google Sheets) est une fonction puissante qui vérifie si un texte correspond à un motif défini par une expression régulière (regex). Elle retourne VRAI si le texte contient le pattern recherché, FAUX dans le cas contraire. C'est l'outil parfait pour valider des formats complexes comme les emails, numéros de téléphone, codes produits ou identifiants clients.

Dans ce guide, tu vas découvrir comment utiliser REGEXMATCH pour automatiser la validation de tes données, avec des exemples concrets tirés du monde professionnel. Fini la validation manuelle ligne par ligne qui prend des heures !

Syntaxe de la fonction REGEXMATCH

=REGEXMATCH(texte; expression_régulière)

La fonction REGEXMATCH prend exactement deux paramètres : le texte à analyser et le pattern regex à rechercher. Elle retourne un booléen (VRAI ou FAUX) selon que le pattern est trouvé ou non dans le texte.

Comprendre chaque paramètre de la fonction REGEXMATCH

1

texte

(obligatoire)

Le texte que tu veux analyser. Ça peut être une référence de cellule comme A2, une chaîne de caractères directe entre guillemets comme "test@email.com", ou le résultat d'une autre fonction qui retourne du texte. Si la cellule est vide, REGEXMATCH retourne FAUX.

2

expression_régulière

(obligatoire)

Le pattern regex à rechercher dans le texte. C'est une chaîne de caractères qui suit la syntaxe des expressions régulières RE2. Par exemple, "^[0-9]+$" vérifie que le texte contient uniquement des chiffres du début à la fin. Les regex permettent de définir des règles complexes de validation.

Caractères spéciaux courants : ^ (début de ligne), $ (fin de ligne), . (n'importe quel caractère), * (0 ou plus), + (1 ou plus), [a-z] (plage de caractères), \d (chiffre), \s (espace).

Astuce : Commence simple ! Teste d'abord ton pattern sur un seul exemple avec =REGEXMATCH("texte test";"pattern"). Une fois que ça fonctionne, remplace le texte en dur par une référence de cellule. Les regex peuvent être intimidantes au début, mais elles deviennent vite indispensables.

Exemples pratiques pas à pas

Exemple 1 – Marketing : valider des adresses email avant envoi de campagne

Tu es responsable marketing et tu prépares une campagne emailing à 10 000 contacts. Avant d'envoyer, tu veux identifier les emails mal formatés pour éviter les rebonds et protéger ta délivrabilité. REGEXMATCH va automatiquement valider chaque adresse.

Le pattern vérifie : caractères autorisés avant @, puis domaine avec point et extension d'au moins 2 caractères.

AB
1Email clientFormat valide ?
2jean.dupont@entreprise.frVRAI
3marie.martin@startup.ioVRAI
4contact@FAUX
5admin.sans.domaineFAUX
6sophie_pro@ledojo.clubVRAI
Formule :=REGEXMATCH(A2;"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$")
Résultat :VRAI

Cette validation détecte environ 95% des emails mal formés. Pour une validation à 100%, il faudrait envoyer un email de confirmation, mais REGEXMATCH élimine déjà les erreurs de saisie évidentes.

Exemple 2 – Logistique : contrôler des codes produit selon nomenclature interne

Tu es responsable logistique et ton entreprise utilise des codes produits normalisés : 3 lettres (catégorie), tiret, 4 chiffres (année), tiret, 3 chiffres (numéro séquentiel). Par exemple : PRD-2024-001. Tu dois vérifier que tous les nouveaux codes respectent ce format avant de les intégrer à l'ERP.

Le pattern force exactement 3 lettres majuscules, puis tiret, 4 chiffres, tiret, 3 chiffres.

ABC
1Code produitFormat conformeAction
2PRD-2024-156VRAIIntégrer
3SRV-2024-089VRAIIntégrer
4PRD2024156FAUXCorriger
5PR-2024-001FAUXCorriger
6ACC-2025-999VRAIIntégrer
Formule :=REGEXMATCH(A2;"^[A-Z]{3}-[0-9]{4}-[0-9]{3}$")
Résultat :VRAI

Avec cette formule, tu identifies instantanément les codes non conformes sur des milliers de lignes. Tu peux ensuite filtrer les FAUX pour les corriger en priorité.

Exemple 3 – Service client : détecter des numéros de téléphone français valides

Tu travailles au service client et tu dois importer une base de 5000 contacts dans ton CRM. Les numéros de téléphone ont été saisis dans différents formats (avec espaces, points, tirets). Tu veux valider que chaque numéro est un mobile ou fixe français valide (10 chiffres commençant par 0).

Le pattern accepte les formats avec espaces, points ou tirets entre les paires de chiffres.

ABC
1Numéro saisiValideType
206 12 34 56 78VRAIMobile
301.23.45.67.89VRAIFixe
40712345678VRAIMobile
5123456789FAUXIncomplet
609-87-65-43-21VRAIFixe
Formule :=REGEXMATCH(A2;"^0[1-9]([\\s.-]?[0-9]{2}){4}$")
Résultat :VRAI

Cette regex est tolérante sur le format (espaces, points, tirets optionnels) tout en vérifiant que le numéro a bien 10 chiffres et commence par 0. Parfait pour nettoyer une base hétérogène.

Exemple 4 – Comptabilité : vérifier des numéros de facture selon le format légal

Tu es comptable et ton entreprise doit respecter une numérotation séquentielle des factures : FAC-AAAA-NNNNN (FAC, tiret, année sur 4 chiffres, tiret, numéro sur 5 chiffres). Tu dois vérifier que toutes les factures du mois respectent ce format avant de clôturer la période.

Validation stricte : 'FAC', tiret, exactement 4 chiffres, tiret, exactement 5 chiffres.

ABC
1N° factureConformeStatut
2FAC-2024-00001VRAIOK
3FAC-2024-00156VRAIOK
4FAC-24-156FAUXÀ corriger
5FACT-2024-00200FAUXÀ corriger
6FAC-2024-99999VRAIOK
Formule :=REGEXMATCH(A2;"^FAC-[0-9]{4}-[0-9]{5}$")
Résultat :VRAI

En automatisant cette vérification, tu évites les erreurs de numérotation qui pourraient poser problème lors d'un contrôle fiscal. C'est une sécurité simple mais efficace.

Les erreurs fréquentes et comment les corriger

Oublier d'échapper les caractères spéciaux

Les caractères comme . * + ? [ ] ( ) { } | \ ^ $ ont une signification spéciale en regex. Si tu veux chercher un point littéral (par exemple dans "1.5"), tu dois l'échapper avec un antislash : \\.

Solution : Pour chercher "V.2.0" littéralement, utilise "V\\.2\\.0" et non pas "V.2.0" (qui signifierait V + n'importe quel caractère + 2 + n'importe quel caractère + 0).

Confondre correspondance partielle et complète

Par défaut, REGEXMATCH cherche le pattern n'importe où dans le texte. =REGEXMATCH("abc123def";"123") retourne VRAI car "123" est présent. Si tu veux que tout le texte corresponde exactement au pattern, utilise ^ (début) et $ (fin).

Solution : Pour vérifier qu'une cellule contient UNIQUEMENT des chiffres, utilise "^[0-9]+$" et non pas "[0-9]+" (qui accepterait "abc123def").

Utiliser REGEXMATCH dans Excel (fonction non disponible)

REGEXMATCH est exclusive à Google Sheets. Si tu essaies de l'utiliser dans Excel, tu obtiens l'erreur #NOM?. Excel ne propose pas de fonction regex native en formule (seulement en VBA).

Solution : Dans Excel, utilise des combinaisons de TROUVE, STXT, SUBSTITUE pour les cas simples. Pour des validations complexes, explore Power Query (M language) ou crée une fonction VBA personnalisée. Ou migre vers Google Sheets pour les projets nécessitant des regex.

Regex trop permissive ou trop stricte

Une regex mal calibrée peut accepter des valeurs invalides (trop permissive) ou rejeter des valeurs valides (trop stricte). Par exemple, ".*@.*" valide n'importe quel texte avec un @ (trop permissif), tandis que "^[a-z]+@[a-z]+\\.[a-z]3$" rejette les emails avec majuscules ou extensions de 2 lettres (trop strict).

Solution : Teste toujours ta regex sur des cas limites : valeurs valides minimales, maximales, avec caractères spéciaux, avec majuscules, etc. Utilise des outils en ligne comme regex101.com pour tester avant d'implémenter.

REGEXMATCH vs TROUVE vs REGEXEXTRACT

CritèreREGEXMATCHTROUVEREGEXEXTRACT
Valeur retournéeVRAI/FAUXPosition (nombre)Texte extrait
Patterns complexes✅ Oui (regex)❌ Non (texte exact)✅ Oui (regex)
Cas d'usage principalValidation de formatRecherche simpleExtraction de données
Disponibilité Excel❌ Google Sheets uniquement✅ Excel et Sheets❌ Google Sheets uniquement
Facilité d'apprentissage⭐⭐⭐⭐⭐⭐⭐

Utilise REGEXMATCH pour la validation (est-ce que ce texte respecte un format ?), TROUVE pour la recherche simple (où se trouve ce mot ?), et REGEXEXTRACT pour l'extraction (donne-moi la partie qui correspond au pattern).

Astuces de pro pour maîtriser REGEXMATCH

Combine avec SI pour des messages personnalisés

Utilise =SI(REGEXMATCH(A2;pattern);"Format valide";"ERREUR : vérifier le format") pour obtenir un message explicite au lieu d'un simple VRAI/FAUX. Très utile pour les fichiers partagés avec des collègues non techniques.

Stocke tes patterns regex dans des cellules dédiées

Au lieu d'écrire le pattern directement dans la formule, mets-le dans une cellule (ex: Z1). Puis utilise =REGEXMATCH(A2;$Z$1). Si tu dois changer le pattern, tu le fais une seule fois et toutes tes formules se mettent à jour automatiquement.

Utilise (?i) pour ignorer la casse sans dupliquer les caractères

Au lieu d'écrire "[a-zA-Z]" partout, utilise "(?i)[a-z]". Le modificateur (?i) au début rend toute la regex insensible à la casse. Plus lisible et moins d'erreurs de frappe.

Compte les correspondances avec NB.SI

Pour compter combien de lignes correspondent au pattern, utilise =NB.SI(B:B;VRAI) où la colonne B contient tes formules REGEXMATCH. Parfait pour avoir des statistiques de qualité de données (ex: "87% des emails sont valides").

Teste tes regex sur regex101.com avant de les implémenter

Ce site gratuit te permet de tester tes expressions régulières, voir ce qu'elles capturent en temps réel, et comprendre chaque partie du pattern grâce aux explications. Tu gagnes 80% du temps de debugging. Sélectionne le mode "JavaScript" qui est proche de la syntaxe Google Sheets.

Questions fréquentes

REGEXMATCH fonctionne-t-elle dans Excel ?

Non, REGEXMATCH est spécifique à Google Sheets. Dans Excel, tu dois utiliser des fonctions VBA personnalisées ou Power Query pour travailler avec les expressions régulières. Pour des cas simples, TROUVE, CHERCHE et SUBSTITUE peuvent suffire.

Comment rendre la recherche insensible à la casse ?

Par défaut, REGEXMATCH est sensible à la casse (A ≠ a). Utilise le modificateur (?i) au début de ton pattern : =REGEXMATCH(texte;"(?i)motif") pour ignorer les différences majuscules/minuscules. C'est très utile pour valider des emails ou des codes.

Peut-on extraire le texte correspondant avec REGEXMATCH ?

Non, REGEXMATCH retourne uniquement VRAI ou FAUX. Pour extraire le texte qui correspond au pattern, utilise REGEXEXTRACT. Pour remplacer du texte selon un pattern, utilise REGEXREPLACE. Ces trois fonctions regex sont complémentaires.

Quelle est la différence entre REGEXMATCH et TROUVE ?

TROUVE cherche une chaîne de caractères exacte et retourne sa position (ou #VALEUR! si non trouvé). REGEXMATCH utilise des patterns flexibles et retourne VRAI/FAUX. Par exemple, REGEXMATCH peut valider qu'un email a le bon format, alors que TROUVE cherche juste si '@' existe.

Comment tester plusieurs patterns en même temps ?

Utilise l'opérateur | (OU) dans ton expression régulière : =REGEXMATCH(texte;"pattern1|pattern2|pattern3"). Par exemple, pour vérifier si un texte contient 'urgent' OU 'important', utilise "urgent|important".

Les fonctions similaires à REGEXMATCH

Deviens un pro d'Excel et Google Sheets

Tu maîtrises maintenant REGEXMATCH ! Rejoins Le Dojo Club pour découvrir toutes les fonctions avancées et automatiser ton travail comme un pro.

Essayer pendant 30 jours