Leçons du module (4/4)
Groupes nommés et références
Lorsque le nombre de groupes augmente, rappelez-vous que $2 est "le mois" et $5
et « l'année » devient fragile. La syntaxe (?<nome>...) ti permette di
nominare un gruppo: lo accedi per nome via groups.name (e nelle
sostituzioni come $<nome>).
Pattern: (?<anno>\d{4})-(?<mese>\d{2})-(?<giorno>\d{2})
Sample: 2024-03-15
Gruppi:
anno = "2024"
mese = "03"
giorno = "15"L'éditeur affiche également les groupes nommés à côté du match.
Référence arrière
Une référence arrière vous permet de référencer, au sein du même modèle, à une capture précédente. La syntaxe :
\1,\2, \u2026 -- référence numérotée (au groupe 1, 2, \u2026).\k<nome>-- référence nommée.
Pattern: \b(\w+)\s+\1\b
Sample: un test un test il il gatto
^^^^^Matcha mots consécutifs en double : (\w+) attrape un mot, puis
\s+\1 nécessite un espace et le même mot.
Auto-documentation et référence arrière nommées
Les groupes nommés améliorent la lisibilité du code JavaScript : au lieu de faire référence à match[1], on accède à match.groups.nome. Dans le pattern, la référence arrière se fait via la syntaxe \\k<nome>.
Essayez-le vous-même
Trova ogni data in formato YYYY-MM-DD nominando i gruppi `anno`, `mese`, `giorno`.
Afficher l'indice
Sintassi: (?<nome>pattern). Il match ti mostra i gruppi sotto la voce 'named'.
Solution disponible après 3 tentatives
Exercice de révision
Trova parole consecutive duplicate (es. `il il`, `casa casa`). Usa un gruppo per la prima e un backreference `\\1` per la seconda.
Afficher l'indice
\\b(\\w+)\\s+\\1\\b: la prima parola e' (\\w+), poi spazio, poi la STESSA parola \\1.
Solution disponible après 3 tentatives
Défi supplémentaire
Trova coppie di tag HTML/XML (es. `<b>testo</b>` o `<i>testo</i>`) assicurandoti che il tag di chiusura coincida con quello di apertura utilizzando una named backreference.
Afficher l'indice
Assegna il nome (?<tag>\w+) e chiudilo con \k<tag>.
Solution disponible après 3 tentatives