# Visualiseur de Diagramme Ferroviaire de Regex

Génère un diagramme ferroviaire SVG d’une expression régulière montrant les littéraux, groupes, alternatives et répétitions, avec numérotation des groupes de capture et explication des drapeaux

> Page canonique: https://elysiatools.com/fr/tools/regex-railroad-diagram-visualizer

- **Catégorie:** Development

- **Mots-clés:** regex, diagramme ferroviaire, visualiser, expression régulière

## Présentation

Collez une expression régulière de saveur JavaScript/PCRE et obtenez un diagramme ferroviaire (syntactique) qui rend sa structure évidente — bien plus lisible qu’un mur de métacaractères.

Comment ça marche :
1. Le pattern est analysé en AST avec la librairie `ret`.
2. Chaque nœud d’AST est mappé à une primitive de diagramme ferroviaire : les littéraux deviennent des boîtes arrondies, les groupes sont étiquetés avec leur index de capture (et nom), les alternatives se ramifient en un choix, et les quantifieurs (*, +, ?, {n,m}) se rendent par des flèches de boucle.
3. Le diagramme est rendu en SVG autonome via `railroad-diagrams`.

Le rapport liste aussi :
- Chaque groupe de capture avec son numéro et son nom (le cas échéant).
- Chaque drapeau avec une explication en clair (g, i, m, s, u, y, d, x).

Lisez le diagramme de gauche à droite. C’est particulièrement utile pour enseigner les regex, documenter des patterns complexes et repérer les formes de retour-arrière catastrophique (quantifieurs imbriqués) avant la production.

Limites : l’analyseur couvre la syntaxe JavaScript/PCRE y compris classes de caractères, ancres, références arrière, groupes nommés, assertions de préanalyse (signalées) et quantifieurs bornés/non bornés. Certaines fonctionnalités PCRE avancées (patterns récursifs, \K, branch reset, conditionnels) ne sont pas prises en charge et renvoient une erreur d’analyse.

## Entrées

- **Expression régulière** (text): e.g. ^(https?)://(\[^/:\]+)(:\d+)?(/.*)?$ · (\w+@\[\w.-\]+) · \b\d{3}-\d{4}\b
- **Drapeaux** (text): e.g. gi · gim · (leave empty for none)

## Quand l'utiliser

- Pour documenter ou expliquer une expression régulière complexe dans un projet ou une présentation technique.
- Pour déboguer un pattern difficile à lire et identifier visuellement les risques de retour-arrière catastrophique (backtracking).
- Pour enseigner le fonctionnement des expressions régulières et des groupes de capture à des développeurs juniors.

## Fonctionnement

- Saisissez votre expression régulière compatible JavaScript/PCRE et ajoutez éventuellement des drapeaux (flags) comme 'g' ou 'i'.
- L'outil analyse le pattern en un arbre de syntaxe abstraite (AST) à l'aide de la bibliothèque 'ret'.
- Chaque nœud de l'AST est converti en éléments graphiques SVG (boîtes pour les littéraux, boucles pour les quantificateurs, embranchements pour les alternatives).
- Le diagramme ferroviaire final est généré instantanément avec la liste détaillée des groupes de capture et l'explication des drapeaux.

## Cas d'usage

- Analyse visuelle d'une regex d'extraction d'URL pour vérifier la capture correcte du protocole, du domaine et du port.
- Audit de sécurité d'un pattern de validation d'email pour repérer les quantificateurs imbriqués problématiques.
- Rédaction de documentation technique illustrée pour expliquer les règles de validation de formulaires.

## Questions fréquentes

### Quelles syntaxes de regex sont prises en charge ?

L'outil prend en charge la syntaxe JavaScript et PCRE standard, y compris les classes de caractères, les groupes nommés et les assertions.

### Le visualiseur prend-il en charge les fonctionnalités PCRE avancées ?

Non, les fonctionnalités avancées comme les patterns récursifs, le reset de branche (\K) ou les conditions ne sont pas supportées.

### Comment lire le diagramme ferroviaire généré ?

Le diagramme se lit de gauche à droite en suivant les lignes de connexion à travers les différents blocs et boucles.

### Les groupes de capture nommés sont-ils identifiés ?

Oui, l'outil liste et numérote tous les groupes de capture, en affichant leur nom s'ils sont nommés.

### Puis-je exporter le diagramme généré ?

Oui, le diagramme est rendu sous forme de fichier SVG autonome que vous pouvez copier ou intégrer.

## Outils associés

- [Aide-mémoire Regex](https://elysiatools.com/fr/tools/regex-cheat-sheet): Aide-mémoire consultable et localisé pour la syntaxe des expressions régulières — classes de caractères, ancres, quantificateurs, groupes et références, assertions, séquences d’échappement et indicateurs, avec un testeur rapide intégré
- [Débogueur Regex](https://elysiatools.com/fr/tools/regex-debugger): Parcourez comment une expression régulière correspond à une chaîne position par position : visualisez les tentatives de correspondance, les succès partiels, les retours en arrière et les captures — un outil pour comprendre le comportement des regex, pas seulement le résultat final
- [Aperçu de Remplacement Regex](https://elysiatools.com/fr/tools/regex-replace-previewer): Aperçu en temps réel des remplacements regex avec mise en évidence des différences et statistiques
- [Calibrateur de barre d’échelle pour microscope](https://elysiatools.com/fr/tools/microscope-scale-bar-calibrator): Calcule l’échelle objet, le champ, les limites de diffraction et l’échantillonnage de Nyquist, avec une barre SVG transparente.
- [Référence des Balises HTML Auto-Fermantes](https://elysiatools.com/fr/tools/self-closing-html-tags): Guide de référence complet pour les éléments vides HTML (balises auto-fermantes), les éléments SVG et les éléments MathML
- [Testeur Regex](https://elysiatools.com/fr/tools/regex-tester): Teste les expressions régulières sur du texte
- [Solveur d’Orbite de Kepler](https://elysiatools.com/fr/tools/kepler-orbit-solver): Résout numériquement l’équation de Kepler E − e·sin(E) = M pour l’anomalie excentrique E, l’anomalie vraie ν, le rayon orbital et la vitesse relative, avec les méthodes de Newton/bissection/point fixe, l’historique de convergence et un diagramme SVG
- [Scanner ReDoS pour regex](https://elysiatools.com/fr/tools/redos-regex-scanner): Analyse des regex pour le risque de backtracking catastrophique, simule des entrees malveillantes et propose des remplacements plus surs

## Exemples

- [Exemples de Remplacement Regex](https://elysiatools.com/fr/samples/regex-replace): Collection de modèles de remplacement regex courants et utiles pour la transformation de texte et le nettoyage de données
- [Modèles d'Expressions Régulières Courants](https://elysiatools.com/fr/samples/regex-samples): Modèles d'expressions régulières couramment utilisés pour la validation et la correspondance
- [Alternatives de Modèles Regex](https://elysiatools.com/fr/samples/regex-alternatives): Plusieurs façons d'écrire le même modèle regex avec différents compromis
- [Groupes de Capture Nommés Regex](https://elysiatools.com/fr/samples/regex-named-groups): Collection de modèles regex utilisant des groupes de capture nommés pour extraire des données structurées du texte. Les groupes nommés rendent les modèles plus lisibles et maintenables en assignant des noms significatifs aux parties capturées.

## Contenu associé

- [Outils de test, de visualisation et de debogage regex](https://elysiatools.com/fr/hubs/regex-utility): Comparez testeurs regex, explications, pense-betes, visualiseurs, linters, scanners de performance et apercus de remplacement dans un seul hub pour concevoir et deboguer des motifs plus sereinement.
- [Outils de Workflow pour SVG, Favicon et Icônes](https://elysiatools.com/fr/hubs/svg-favicon-icon-workflows): Generez des packs favicon, optimisez des SVG, convertissez des icones entre ICO, PNG, JPG, WebP et SVG, et preparez des assets web dans un seul hub.
