01 · Basi
- letterali
- \d \w \s
- jolly .
- escape
Fine del Corso Regex
Hai attraversato gli 8 moduli del Corso Regex — dalla a letterale fino ai lookaround, ai named groups e ai pattern ReDoS-safe. Qui sotto la mappa dei concetti chiave e una sfida finale in tre tappe che li mette al lavoro insieme su problemi reali.
Tre problemi reali che combinano tutti i concetti del corso: validare un IBAN italiano, parsare un log Apache con gruppi nominati, e identificare le email da redigere in un testo. Ogni esercizio richiede classi, quantificatori, ancore e gruppi insieme.
Un IBAN italiano e' lungo 27 caratteri: `IT` + 2 cifre di controllo + 1 lettera CIN + 5 cifre ABI + 5 cifre CAB + 12 caratteri alfanumerici per il conto. Costruisci la regex che lo matcha esattamente.
Riconosci un IBAN italiano: IT, 2 cifre, 1 lettera maiuscola, 5 cifre, 5 cifre, 12 alfanumerici maiuscoli. Esattamente 27 caratteri.
Concatena: IT, \d{2}, [A-Z], \d{5}, \d{5}, [A-Z0-9]{12}, racchiuso tra \b.
Soluzione disponibile dopo 3 tentativi
Da una riga di log Apache combined, estrai `ip`, `metodo`, `path` e `status` come gruppi nominati.
Estrai ip, metodo, path e status da ogni riga di log Apache. Tutti come gruppi nominati.
Inizio riga ^, IP, due token separati da spazi, data tra [...], richiesta tra "...", status. Usa (?<ip>...), (?<metodo>...), (?<path>...), (?<status>...).
Soluzione disponibile dopo 3 tentativi
Trova ogni email nel testo come gruppo nominato `locale` + dominio. Con replace callback potresti redigerle in `***@dominio`, preservando il dominio.
Trova ogni email con due gruppi nominati: locale (parte prima della @) e dominio. Usa classi permissive.
(?<locale>[\w.+-]+)@(?<dominio>[\w.-]+). In replace callback (_, locale, dominio) restituirebbe `***@${dominio}`.
Soluzione disponibile dopo 3 tentativi
Una pagina con tutta la sintassi essenziale di regex JavaScript, pronta da tenere sotto mano mentre programmi.
La pratica e' tutto: apri il Playground, incolla un log o un file di testo che ti capita per le mani, e prova a estrarre i dati che ti servono. Le regex si imparano risolvendo problemi concreti.