Vai al contenuto
eLearner.app
Modulo 5 · Lezione 2 di 418/32 nel corso~8 min
Lezioni del modulo (2/4)

Range nelle classi: `[a-z0-9]`

Elencare tutti i caratteri uno a uno e' tedioso. Le classi accettano range con il trattino -: [a-z] matcha una qualunque lettera minuscola, [0-9] una cifra, [A-Z] una maiuscola.

Code
Pattern: [a-z]+
Sample:  Ciao Mondo 123
          ^^^  ^^^^

Il range usa l'ordine dei code point (sostanzialmente ASCII per i caratteri latini): a-z significa "tutti i caratteri dal code point di a al code point di z", quindi 26 lettere.

Combinare range

Dentro una sola classe puoi mettere piu' range e singoli caratteri:

Code
[a-zA-Z0-9_]   identico a \\w (in ASCII)
[a-fA-F0-9]    cifre esadecimali
[0-9.]         cifre o il punto (per numeri decimali)

L'ordine non conta: [0-9a-z] e [a-z0-9] sono identici.

Range e ordine dei caratteri ASCII

I range come [a-z] seguono rigidamente l'ordine dei caratteri nella tabella ASCII. Scrivere un range non valido, come [z-a], causerà un errore di compilazione della regex. Il trattino letterale va posto alla fine o all'inizio: [a-z-].

Prova tu

Esercizio#regex.m5.l2.e1
Tentativi: 0Caricamento…

Trova ogni sequenza esadecimale di 6 caratteri (es. il codice colore #1a2b3c). Le cifre vanno da 0 a 9, le lettere da a a f (maiuscole o minuscole).

Caricamento editor…
Mostra suggerimento

Aggiungi A-F al range, oppure usa la flag i.

Soluzione disponibile dopo 3 tentativi

Esercizio di ripasso

Esercizio#regex.m5.l2.e2
Tentativi: 0Caricamento…

Trova ogni codice prodotto fatto da 3 lettere maiuscole seguite da 4 cifre (es. ABC1234).

Caricamento editor…
Mostra suggerimento

Per le cifre puoi usare \\d oppure il range [0-9]: questo esercizio richiede [0-9] esplicito.

Soluzione disponibile dopo 3 tentativi

Sfida aggiuntiva

Esercizio#regex.m5.l2.e3
Tentativi: 0Caricamento…

Trova i caratteri esadecimali nel testo (cifre da 0 a 9 e lettere da A a F, sia maiuscole che minuscole).

Caricamento editor…
Mostra suggerimento

Combina i tre range: 0-9, a-f, A-F.

Soluzione disponibile dopo 3 tentativi