Écrire une expression régulière expliquée pas à pas, avec des tests

Obtenez une regex pour votre langage avec l’explication de chaque élément, un tableau des cas qui doivent correspondre ou non, du code prêt à l’emploi et un avertissement sur le backtracking. Conçu pour ChatGPT, Claude, Gemini et Microsoft Copilot. Il comprend 5 variables personnalisables et vous pouvez le copier gratuitement en un clic.

Débutant · Code · En attente de relecture éditoriale

Prompt

Agis comme un développeur expert des expressions régulières, qui explique clairement aux débutants.

J’ai besoin d’une expression régulière pour : {{objectif}}
- Langage ou moteur : {{langage}}
- Usage : {{usage}}
- Exemples qui DOIVENT correspondre : {{valides}}
- Exemples qui ne doivent PAS correspondre : {{invalides}}

Livrables :
1. L’expression régulière finale, compatible avec le moteur indiqué, avec les flags nécessaires.
2. Une explication élément par élément dans un tableau : fragment, signification et raison d’être. Couvre les ancres, les groupes (nommés si le moteur le permet), les quantificateurs et les classes de caractères.
3. Une version lisible et commentée (mode étendu ou `x` si le moteur le permet, sinon construite par morceaux).
4. Un tableau de tests avec tous mes exemples et au moins cinq cas limites que tu ajoutes (chaîne vide, espaces, casse, caractères accentués, longueur extrême), avec le résultat attendu.
5. Du code dans mon langage qui utilise la regex pour l’usage indiqué (valider, chercher, extraire ou remplacer) et exécute le tableau de tests.
6. Les risques : faux positifs et faux négatifs probables, problèmes d’Unicode et risque de backtracking catastrophique (ReDoS) si la regex traite du texte saisi par les utilisateurs.
7. Les cas où une regex n’est pas le bon outil ici, et quoi utiliser à la place (par exemple un parseur ou une bibliothèque de validation).

Contraintes :
- Si mes exemples sont contradictoires ou insuffisants, dis-le et pose-moi la question avant la version finale.
- Préfère une regex claire et correcte à une regex très courte et difficile à maintenir.
- N’affirme pas que la regex valide quelque chose à 100 % (une adresse e-mail, par exemple) si la norme est plus complexe.

Comment l'utiliser

  1. Décrivez avec des mots ce que vous voulez trouver ou valider.
  2. Donnez plusieurs exemples réels qui doivent correspondre et d’autres non.
  3. Exécutez le code de test fourni et ajoutez les cas qui échouent en usage réel.

Exemple d'utilisation

Objectif : codes postaux français à 5 chiffres · Langage : PHP (PCRE) · Usage : valider un champ complet · Valides : 75011, 2A004 · Invalides : 7501, 750111.

Exemple de résultat

1. Expression finale

/^(?:\d{5}|2[AB]\d{3})$/D pour preg_match.

2. Explication

FragmentSignification
^ … $Ancre sur tout le champ
\d{5}Cinq chiffres
2[AB]\d{3}Variante corse : 2A ou 2B suivi de trois chiffres
/DEmpêche $ d’accepter un saut de ligne final

À vérifier : les codes postaux corses réels commencent par 20 (20000, 20200…) ; 2A et 2B sont des codes de département et apparaissent dans les codes INSEE des communes. J’accepte 2A/2B comme demandé, mais confirmez que votre champ contient bien des codes postaux.

5. Code et tests

<?php
const CODE_POSTAL = '/^(?:\d{5}|2[AB]\d{3})$/D';

$cas = [
    '75011' => true, '69003' => true, '2A004' => true,
    '7501' => false, '750111' => false, '75 011' => false, 'ABCDE' => false,
    '' => false, "75011\n" => false, '2a004' => false, '2C004' => false,
];

foreach ($cas as $valeur => $attendu) {
    $obtenu = preg_match(CODE_POSTAL, (string) $valeur) === 1;
    assert($obtenu === $attendu, "échec : « $valeur »");
}

Pas de quantificateurs imbriqués, donc pas de risque de backtracking catastrophique. Le format seul ne garantit pas que le code existe : pour cela, comparez avec la base officielle des codes postaux…

Informations clés

Catégorie
Programmation et développement · Automatisations
Type de résultat
Code
Niveau
Débutant
Conçu pour
ChatGPT, Claude, Gemini et Microsoft Copilot
Vérifié sur
En attente de vérification éditoriale
Variables
Ce qu’il faut trouver ou valider, Langage ou moteur, Usage, Exemples valides et Exemples invalides
Langue
Français
Prix
Gratuit, sans inscription
Mis à jour
07/11/2026

Questions fréquentes

Qu’est-ce que le backtracking catastrophique ?

Une regex avec des quantificateurs imbriqués peut essayer un nombre énorme de combinaisons sur certains textes et rester bloquée. Si elle traite des données utilisateur, cela peut servir à faire tomber un serveur (ReDoS).

La même regex fonctionne-t-elle dans tous les langages ?

Pas toujours. Les moteurs diffèrent sur les groupes nommés, le lookbehind, les classes Unicode et les flags. C’est pourquoi le prompt demande votre langage et adapte la syntaxe.

À quoi sert ce prompt ?

Obtenez une regex pour votre langage avec l’explication de chaque élément, un tableau des cas qui doivent correspondre ou non, du code prêt à l’emploi et un avertissement sur le backtracking.

Avec quels outils d'IA fonctionne-t-il ?

Il est conçu pour ChatGPT, Claude, Gemini et Microsoft Copilot. Nous ne l'avons pas encore vérifié sur ces outils ; les résultats peuvent donc varier de l'un à l'autre.

Comment personnaliser le prompt ?

Cliquez sur « Personnaliser » et remplissez les variables (Ce qu’il faut trouver ou valider, Langage ou moteur, Usage, Exemples valides et Exemples invalides). Le texte se met à jour instantanément et vous pouvez ensuite le copier en un clic. Les valeurs sont stockées uniquement dans votre navigateur.

Faut-il de l'expérience pour l'utiliser ?

Non. C'est un prompt de niveau débutant : il suffit de remplir les détails et de le coller dans votre outil d'IA.

Ce prompt est-il gratuit ?

Oui. Tous les prompts de HomeCasa Prompts sont gratuits, sans inscription ni abonnement. Vous pouvez aussi les utiliser dans des projets professionnels.

Puis-je me fier au résultat de l'IA ?

Considérez-le comme un brouillon de qualité : vérifiez toujours les données, les chiffres et les affirmations importantes avant de publier ou de prendre des décisions.

Prompts similaires