Passer au contenu principal
eLearner.app
Module 4 · Leçon 1 sur 413/32 dans le cours~10 min
Leçons du module (1/4)

Gruppi di cattura: `(...)`

Le parentesi tonde (...) hanno due funzioni in una:

  1. Raggruppare sotto-pattern, cosi' un quantificatore si applica all'intero gruppo ((ab)+ matcha ab, abab, ababab).
  2. Catturare la sotto-stringa matchata, esponendola come gruppo numerato accessibile separatamente (gruppo 1, 2, 3\u2026 da sinistra a destra in base alla parentesi aperta).
Code
Pattern: (\d{4})-(\d{2})-(\d{2})
Sample:  Data: 2024-03-15.
               ^^^^^^^^^^
Gruppi:
  match  = "2024-03-15"
  gruppo1 = "2024"
  gruppo2 = "03"
  gruppo3 = "15"

L'editor a destra ti mostra i gruppi sotto ogni match.

Quantificare un gruppo

Senza parentesi, ab+ significa "a seguito da una o piu' b". Con parentesi diventa "uno o piu' ab":

Code
Pattern   Matcha su 'ababab':
ab+       'ab' (poi 'a' e 'b' separati, non collegati)
(ab)+     'ababab' come gruppo unico

Istanze e indici dei gruppi di cattura

Ogni coppia di parentesi tonde non preceduta da caratteri speciali crea un gruppo di cattura numerato. Il gruppo 1 corrisponde alla prima parentesi aperta, il gruppo 2 alla seconda e così via. In JavaScript, puoi accedere ai gruppi tramite l'array restituito da exec o matchAll.

Prova tu

Exercice#regex.m4.l1.e1
Tentatives : 0Chargement…

Trova ogni data in formato YYYY-MM-DD, catturando anno, mese e giorno come tre gruppi separati.

Chargement de l'éditeur…
Afficher l'indice

Avvolgi ognuno dei tre blocchi di cifre fra parentesi: ognuna crea un gruppo numerato.

Solution disponible après 3 tentatives

Esercizio di ripasso

Exercice#regex.m4.l1.e2
Tentatives : 0Chargement…

Trova ogni ripetizione di `ab` (uno o piu') come singolo match. Senza parentesi, il quantificatore si applicherebbe solo all'ultima `b`.

Chargement de l'éditeur…
Afficher l'indice

(ab)+ tratta 'ab' come unita' e cerca una o piu' ripetizioni consecutive.

Solution disponible après 3 tentatives

Sfida aggiuntiva

Exercice#regex.m4.l1.e3
Tentatives : 0Chargement…

Crea tre gruppi di cattura per estrarre giorno, mese e anno separatamente da date nel formato `GG/MM/AAAA`.

Chargement de l'éditeur…
Afficher l'indice

Racchiudi ciascun \d{2} o \d{4} tra parentesi tonde.

Solution disponible après 3 tentatives