Atelier visuel de regex

Construisez, testez, expliquez et maîtrisez les expressions régulières grâce à des outils visuels, des guides, des exemples et une bibliothèque en constante évolution.

Guide regex

Regex Email

La validation d’adresse email est un cas d’usage très courant des regex, mais il est facile de créer un pattern trop complexe. Cette page présente une regex email pratique et compréhensible.

Validation simple d’une adresse e-mail

Valide la structure générale d’une adresse e-mail.

Pattern proposé

^[^\s@]+@[^\s@]+\.[^\s@]+$
Test rapide

Ce que ça matche

  • alice@example.com
  • jean@test.org

Limites connues

  • Vérifie uniquement le format général.
  • Ne confirme pas que le domaine ou la boîte e-mail existent réellement.

Validation pratique d’une adresse e-mail

Pattern de validation adapté à la plupart des formulaires web.

Pattern proposé

^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
Test rapide

Ce que ça matche

  • alice@example.com
  • jean.dupont+shop@test.co.uk

Limites connues

  • Ne couvre pas l’intégralité de la spécification RFC.
  • Doit être complété par une confirmation d’adresse ou une validation côté serveur.

Adresse e-mail avec sous-domaines

Valide les adresses e-mail utilisant un ou plusieurs sous-domaines.

Pattern proposé

^[^\s@]+@(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,}$
Test rapide

Ce que ça matche

  • alice@mail.example.com
  • jean@example.co.uk

Limites connues

  • Valide uniquement la structure générale de l’adresse.

Adresses Gmail uniquement

Accepte uniquement les adresses Gmail.

Pattern proposé

^[A-Za-z0-9._%+-]+@gmail\.com$
Test rapide

Ce que ça matche

  • alice@gmail.com
  • bob@gmail.com

Limites connues

  • Convient uniquement si les adresses Gmail sont explicitement requises.

Adresse e-mail d’entreprise

Limite les adresses e-mail à un domaine d’entreprise spécifique.

Pattern proposé

^[A-Za-z0-9._%+-]+@company\.com$
Test rapide

Ce que ça matche

  • alice@company.com
  • support@company.com

Limites connues

  • Le nom de domaine doit être adapté à votre organisation.

Extraire des adresses e-mail

Extrait les adresses e-mail présentes dans un texte.

Pattern proposé

[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}
Test rapide

Ce que ça matche

  • alice@example.com
  • bob@test.org

Limites connues

  • Peut également extraire des adresses dont la structure semble valide mais qui ne correspondent pas à de vraies boîtes e-mail.

Liste d’adresses e-mail séparées par des virgules

Valide une liste d’adresses e-mail séparées par des virgules.

Pattern proposé

^\s*[^\s@]+@[^\s@]+\.[^\s@]+(?:\s*,\s*[^\s@]+@[^\s@]+\.[^\s@]+)*\s*$
Test rapide

Ce que ça matche

  • alice@example.com, bob@test.org

Limites connues

  • Fonctionne uniquement avec des listes séparées par des virgules.

Adresse e-mail avec alias plus

Accepte les alias e-mail utilisant le signe plus.

Pattern proposé

^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
Test rapide

Ce que ça matche

  • jean+shop@example.com
  • alice+newsletter@gmail.com

Limites connues

  • Certains systèmes choisissent de normaliser ou limiter les alias pour des raisons métier.

Domaine d’une adresse e-mail uniquement

Extrait uniquement la partie domaine après le symbole @.

Pattern proposé

(?<=@)[A-Za-z0-9.-]+\.[A-Za-z]{2,}
Test rapide

Ce que ça matche

  • example.com
  • mail.company.org

Limites connues

  • Utilise un lookbehind : vérifiez la compatibilité avec votre moteur regex.

Partie utilisateur d’une adresse e-mail

Extrait la partie locale avant le symbole @.

Pattern proposé

^[^\s@]+(?=@)
Test rapide

Ce que ça matche

  • alice
  • jean.dupont

Limites connues

  • Prévu pour une adresse e-mail par ligne.

Adresse e-mail avec TLD spécifique

Accepte uniquement les adresses e-mail terminant par une extension précise.

Pattern proposé

^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.org$
Test rapide

Ce que ça matche

  • team@example.org
  • support@test.org

Limites connues

  • Remplacez .org par l’extension requise pour votre cas d’usage.

Adresse e-mail professionnelle

Accepte les adresses e-mail qui n’appartiennent pas aux principaux fournisseurs gratuits.

Pattern proposé

^[A-Za-z0-9._%+-]+@(?!gmail\.com$|yahoo\.com$|hotmail\.com$|outlook\.com$)[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
Test rapide

Ce que ça matche

  • alice@company.com
  • contact@example.org

Limites connues

  • Exclut uniquement les fournisseurs présents dans le pattern.

Extraire plusieurs adresses e-mail

Extrait toutes les adresses e-mail présentes dans un texte.

Pattern proposé

[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}
Test rapide

Ce que ça matche

  • ventes@example.com
  • aide@test.org
  • ceo@company.com

Limites connues

  • Peut également extraire des adresses dont la structure paraît valide mais qui ne sont pas réellement utilisables.

Masquer des adresses e-mail

Recherche des adresses e-mail avant de les remplacer par une valeur masquée.

Pattern proposé

[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}
Test rapide

Ce que ça matche

  • alice@example.com
  • bob@test.org

Limites connues

  • Le remplacement lui-même dépend du langage utilisé.

Adresse e-mail sans alias plus

Refuse les adresses e-mail utilisant un alias avec le signe plus.

Pattern proposé

^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
Test rapide

Ce que ça matche

  • alice@example.com

Limites connues

  • Refuse également des adresses parfaitement valides chez de nombreux fournisseurs.

Extensions de domaine autorisées

Limite les adresses e-mail à une liste prédéfinie d’extensions de domaine.

Pattern proposé

^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.(?:com|org|net)$
Test rapide

Ce que ça matche

  • alice@example.com
  • bob@test.org

Limites connues

  • La liste doit être mise à jour régulièrement avec les nouveaux TLD.

Pourquoi la validation des e-mails est difficile

Les adresses e-mail semblent simples, mais leur syntaxe officielle est beaucoup plus flexible qu’on ne l’imagine.

Dans une application réelle, une regex pratique vérifie généralement la structure courante plutôt que toutes les adresses techniquement valides selon la RFC.

L’objectif est surtout de détecter les erreurs évidentes, pas de prouver que l’adresse existe ou reçoit réellement des messages.

Regex e-mail pratique ou conforme à la RFC

Les regex totalement conformes à la RFC sont souvent très longues, difficiles à lire et pénibles à maintenir.

Pour la plupart des formulaires, une regex pratique accompagnée d’une confirmation par e-mail est plus fiable et plus simple à comprendre.

N’utilisez une validation RFC stricte que si votre application doit réellement accepter tous les cas limites autorisés.

Ce qu’une regex e-mail peut valider

Une regex e-mail peut vérifier la présence d’une partie locale, du symbole @, d’un domaine et d’une extension.

Elle peut aussi limiter les caractères autorisés, imposer une longueur minimale pour le TLD ou refuser les espaces.

En revanche, elle ne peut pas confirmer les enregistrements DNS, l’existence de la boîte ou le fait que l’adresse appartient à l’utilisateur.

Alias e-mail et adressage avec plus

De nombreux fournisseurs acceptent les alias comme jean+shop@example.com.

Refuser le signe plus peut bloquer des utilisateurs légitimes, notamment sur Gmail et certains services utilisés par les développeurs.

Sauf besoin spécifique, une regex e-mail devrait généralement accepter ce type d’adressage.

Adresses e-mail internationales

Les systèmes e-mail modernes peuvent gérer les noms de domaine internationalisés et, dans certains cas, des parties locales non ASCII.

Beaucoup de regex simples se limitent volontairement aux adresses ASCII, car elles sont plus faciles à gérer de manière cohérente.

Si votre application vise des utilisateurs internationaux, testez soigneusement le comportement Unicode et envisagez une bibliothèque spécialisée.

Confirmer une adresse e-mail

La méthode la plus fiable pour vérifier une adresse e-mail consiste généralement à envoyer un message de confirmation.

Une regex peut réduire les fautes de saisie, mais seule la confirmation prouve que l’utilisateur peut accéder à la boîte.

Pour la création de compte, la réinitialisation de mot de passe ou les opérations sensibles, la confirmation est plus importante qu’une regex plus stricte.

Questions fréquentes

Quelle est la meilleure regex pour valider une adresse e-mail ?

Il n’existe pas une seule "meilleure" regex. Le bon choix dépend de votre application et du niveau de validation recherché.

Pour la plupart des formulaires web, une regex pratique vérifiant la structure générale suffit lorsqu’elle est associée à une confirmation par e-mail.

Une regex peut-elle valider toutes les adresses e-mail ?

Non. La spécification officielle autorise de nombreux formats rarement utilisés en pratique.

La plupart des applications utilisent volontairement une regex plus simple, plus lisible et plus facile à maintenir.

Une regex peut-elle vérifier qu’une adresse e-mail existe ?

Non. Une regex peut uniquement contrôler le format d’une adresse.

Pour vérifier qu’une adresse existe réellement, il faut utiliser une confirmation par e-mail ou un service de vérification spécialisé.

Faut-il accepter les alias avec le signe plus ?

En général oui. De nombreux fournisseurs, comme Gmail, acceptent des adresses du type jean+shop@gmail.com.

Les refuser peut empêcher des utilisateurs légitimes de créer un compte.

La validation d’une adresse e-mail doit-elle être faite côté client ou côté serveur ?

La validation côté client améliore l’expérience utilisateur en détectant immédiatement les erreurs de saisie.

Une validation côté serveur reste indispensable, car les contrôles côté client peuvent toujours être contournés.

Pourquoi ma regex refuse-t-elle des adresses pourtant valides ?

De nombreuses regex simples rejettent volontairement certains formats pourtant valides selon la RFC.

Vérifiez les hypothèses faites par votre pattern et testez-le avec des exemples réalistes avant de l’utiliser en production.

Pour aller plus loin

📘 Guide recommandé

Limites des regex

Une regex email peut vérifier la forme générale d’une adresse, mais elle ne peut pas confirmer que la boîte existe ou reçoit des messages.

Utilisez la regex pour une première validation de format, puis une confirmation ou une vérification serveur si la délivrabilité est importante.

Lire le guide complet →
📘 Guide recommandé

Tester une regex

Les regex email doivent être testées avec des adresses simples, des sous-domaines, des signes plus, des domaines invalides et des saisies mal formées.

Lire le guide complet →
📘 Guide recommandé

Bonnes pratiques de validation

La validation email est plus fiable lorsqu’elle combine regex, normalisation, messages d’erreur clairs et contrôles côté serveur.

Lire le guide complet →
📘 Guide recommandé

Erreurs regex fréquentes

Les regex email deviennent souvent trop strictes, trop permissives ou inutilement complexes.

Les erreurs fréquentes consistent à vouloir être totalement conforme à la RFC, oublier les cas limites ou utiliser la regex comme seule validation.

Lire le guide complet →
📘 Guide recommandé

Classes de caractères

Les regex e-mail sont construites presque entièrement à partir de classes de caractères comme [A-Za-z0-9], \w ou des ensembles personnalisés.

Comprendre ces éléments de base facilite la lecture et l’adaptation des patterns de validation.

Lire le guide complet →
📘 Guide recommandé

Quantificateurs

Les quantificateurs permettent de définir les longueurs minimales, les caractères optionnels et les répétitions utilisées dans les regex e-mail.

Les maîtriser aide à comprendre pourquoi les patterns de validation sont écrits de cette manière.

Lire le guide complet →