C # - Constructions de regroupement

Les constructions de regroupement délimitent les sous-expressions d'une expression régulière et capturent les sous-chaînes d'une chaîne d'entrée. Le tableau suivant répertorie les constructions de regroupement -

Construction de regroupement La description Modèle Allumettes
( subexpression ) Capture la sous-expression correspondante et lui attribue un nombre ordinal de base zéro. (\ w) \ 1 "ee" dans "deep"
(?< name >subexpression) Capture la sous-expression correspondante dans un groupe nommé. (? <double> \ w) \ k <double> "ee" dans "deep"
(?< name1 -name2 >subexpression) Définit une définition de groupe d'équilibrage. (((? 'Ouvrir' \ () [^ \ (\)] *) + ((? 'Fermer-Ouvrir' \)) [^ \ (\)] *) +) * (? (Ouvrir) (? !)) $ "((1-3) * (3-1))" dans "3 + 2 ^ ((1-3) * (3-1))"
(?: subexpression) Définit un groupe non capturant. Ecrire (?: Ligne)? "WriteLine" dans "Console.WriteLine ()"
(?imnsx-imnsx:subexpression) Applique ou désactive les options spécifiées dans la sous-expression . A \ d {2} (? I: \ w +) \ b "A12xl", "A12XL" dans "A12xl A12XL a12xl"
(?= subexpression) Assertion d'anticipation positive de largeur nulle. \ w + (? = \.) "est", "a couru" et "dehors" dans "Il est. Le chien a couru. Le soleil est dehors."
(?! subexpression) Assertion d'anticipation négative de largeur nulle. \ b (?! un) \ w + \ b "sûr", "utilisé" dans "pas sûr que l'unité est utilisée"
(?< =subexpression) Assertion de regard positif de largeur nulle. (? <= 19) \ d {2} \ b "99", "50", "05" dans "1851 1999 1950 1905 2003"
(?< ! subexpression) Assertion de regard négatif de largeur nulle. (? <! 19) \ d {2} \ b "51", "03" dans "1851 1999 1950 1905 2003"
(?> subexpression) Sous-expression sans retour en arrière (ou "gourmande"). [13579] (?> A + B +) "1ABB", "3ABB" et "5AB" dans "1ABB 3ABBC 5AB 5AC"