Vai al contenuto
eLearner.app
Modulo 1 · Lezione 2 di 42/32 nel corso~10 min
Lezioni del modulo (2/4)

Classi base: \d \w \s

Oltre ai caratteri letterali, le regex ti danno delle classi predefinite: shortcut per "qualunque cifra", "qualunque carattere di parola", "qualunque spazio". Sono il primo passo verso pattern davvero utili.

ClasseMatcha
\dUna cifra (0-9)
\wUn carattere di parola (A-Za-z0-9_)
\sUno spazio (spazio, tab, newline, ecc.)
\DNON una cifra
\WNON un carattere di parola
\SNON uno spazio

Ognuna matcha un singolo carattere. Per matchare "uno o piu' caratteri" servono i quantificatori (+, modulo 2), ma il + lo useremo da subito qui perche' "trovami tutti i numeri" e' troppo utile per aspettare.

Code
Pattern: \d+
Sample:  Ho 3 mele, 12 pere e 100 prugne.
            ^      ^^      ^^^

\d+ significa una o piu' cifre consecutive: matcha 3, 12 e 100 come tre match distinti (con la flag g).

\w: caratteri di parola

\w e' equivalente a [A-Za-z0-9_] (lettere ASCII, cifre, underscore). NON include accenti, lettere greche o emoji: per quelli servono le Unicode property escapes (\p{L}, modulo 5).

Approfondimento sulle classi base e negazioni

Le classi predefinite \\d, \\w, \\s velocizzano la scrittura. Le versioni maiuscole (\\D, \\W, \\S) negano l'intero insieme. Ad esempio, \\S+ cattura qualunque blocco di testo privo di spazi (come intere parole comprese di punteggiatura). L'engine gestisce \\s considerando non solo lo spazio classico, ma anche le tabulazioni (\\t) e i caratteri di a capo (\\n o \\r).

Prova tu

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

Estrai dal testo tutte le sequenze di cifre consecutive (numeri). Usa la classe `\\d` con il quantificatore `+`.

Caricamento editor…
Mostra suggerimento

\\d+ cattura uno o piu' cifre. Con la flag g raccogli tutti i match.

Soluzione disponibile dopo 3 tentativi

Esercizio di ripasso

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

Trova ogni 'parola' nel testo: una sequenza continua di caratteri di parola (`\\w+`).

Caricamento editor…
Mostra suggerimento

\\w+ matcha sequenze di lettere/cifre/underscore. La punteggiatura viene saltata.

Soluzione disponibile dopo 3 tentativi

Sfida aggiuntiva

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

Trova tutte le sequenze di uno o più spazi vuoti consecutivi nel testo (inclusi spazi, tabulazioni e caratteri di a capo).

Caricamento editor…
Mostra suggerimento

Usa la classe \s con il quantificatore + per catturare sequenze di spazi consecutivi.

Soluzione disponibile dopo 3 tentativi