À retenir
- Sert à sauvegarder une portion de texte identifiée par une recherche.
- Se matérialise presque toujours par des parenthèses
()dans une Regex. - Permet d'utiliser des « références arrières » pour répéter ou transformer le texte trouvé.
Dans l'univers des expressions régulières (Regex), cet adjectif qualifie un groupe de caractères que l'ordinateur doit non seulement trouver, mais aussi mémoriser. Imaginez que vous demandiez à un assistant de chercher une phrase et de mettre de côté un mot spécifique pour que vous puissiez le réutiliser plus tard : ce mot est alors placé dans un groupe capturant.
Étymologie
Il s'agit d'un calque de l'anglais capturing (souvent utilisé dans l'expression capturing group). En français, le participe présent du verbe « capturer » est employé comme adjectif pour décrire cette fonction de mise en mémoire immédiate d'une donnée textuelle.
Exemples d'usage
- Dans une recherche de date (ex: 12/05/2024), utiliser des parenthèses autour du mois pour pouvoir l'extraire spécifiquement.
- Dans le code
(https?://)S+, les parenthèses créent un groupe capturant qui isole le protocole (http ou https) d'une adresse web.
Cas d'usage
Ce concept est omniprésent dans le développement web et le traitement de données. On s'en sert pour extraire des informations d'un texte (comme un numéro de téléphone), pour reformater des fichiers (changer l'ordre du nom et du prénom dans une liste) ou pour effectuer des recherches complexes dans des journaux système (logs).
Bonnes pratiques
Évitez de capturer inutilement des éléments dont vous n'avez pas besoin, car cela consomme de la mémoire. Si vous voulez simplement grouper des éléments sans les mémoriser, utilisez une syntaxe de groupe non-capturant (souvent (?:...)).
Synonymes
Antonymes
Conseil
Pour débuter, entraînez-vous sur des testeurs de Regex en ligne. Vous verrez visuellement les groupes capturants se mettre en couleur ou s'afficher dans un tableau récapitulatif des résultats, ce qui aide énormément à comprendre ce que la machine « retient » réellement.
Questions fréquentes
Quelle est la différence avec un groupe non-capturant ?
Un groupe capturant garde le résultat en mémoire, tandis qu'un groupe non-capturant sert uniquement à appliquer une règle de recherche (comme une répétition) sans stocker la valeur.
Comment accède-t-on à ce qui a été capturé ?
En programmation, on y accède généralement via un index numérique (comme $1, $2) ou par un nom si le langage supporte les captures nommées.