Esercizi! Esercizi!

Esercizi G1-G5

Gruppo 1

Scrivi la regex che trova ogni occorrenza di amo alla fine di una linea.
Soluzione amo$

Scrivi che cosa può trovare [123]a .
Soluzione 1a, 2a, 3a

Scrivi la regex che trova ogni occorrenza di cero, nero, pero o vero .
Soluzione [cnpv]ero

Scrivi che cosa può trovare [1-4a-]X .
Soluzione 1X, 2X, 3X, 4X, aX, -X

Go!Torna al testo

Gruppo 2

Scrivi la regex che trova ogni q che non sia preceduta da una c.
Soluzione [^c]q

Nel seguente testo sono evidenziate le stringhe che nell'ordine vengono trovate da una regex:
Tanto gentile e tanto onesta pare
la donna mia quand'ella altrui saluta,
ch'ogne lingua deven tremando muta,
e li occhi non l'ardiscon di guardare.
Quale regex è stata usata?
Soluzione a.d

Descrivi con parole tue che cosa può trovare [0-9].[a-z]
Soluzione Ogni sequenza di 3 caratteri in cui il primo carattere sia una cifra e il terzo sia una lettera minuscola.
(nota: vedremo più avanti che la regex può essere in modo "case insensitive", e allora [a-z] indicherà una qualunque lettera)

Descrivi con parole tue che cosa può trovare [^a-z].g
Soluzione Ogni sequenza di 3 caratteri in cui il primo carattere non sia una lettera minuscola e il terzo sia la lettera g.
(nota: vedremo più avanti che la regex può essere in modo "case insensitive", e allora [^a-z] escluderà una qualunque lettera)

Go!Torna al testo

Gruppo 3

Il CAP di Bologna è 40100, quello di Parma è 43100: scrivi la regex che trova l'uno o l'altro (la più breve).
Soluzione 4(0|3)100

Hai scritto un trattato di frutticoltura e alla fine vuoi controllare di aver scritto sempre bene il plurale di ciliegia (ciliegie, ma chissà che non sia sfuggito qualche ciliege, che in verità non è del tutto scorretto ma è caduto in disuso). Scrivi la regex che ti serve per effettuare questo controllo.
Soluzione ciliegi?e

Nel newsgroup che segui c'è un troll che vuoi eliminare dalla tua vista.
Le sue possibili firme sono: puppet, puppett, pupett, o pupet.
Scrivi la regex che ti occorre per poterlo filtrare.
Soluzione pupp?ett?

Go!Torna al testo

Gruppo 4

Nel tuo codice HTML vuoi trovare le occorrenze di a href=" e di a href = ".
Scrivi la regex necessaria (ricorda che anche lo spazio è un carattere!).
Soluzione a +href ?= ?"

Cambia leggermente la regex trovata nell'esercizio precedente in modo da includere l'eventualità che attorno all'uguale possa esserci anche più di uno spazio.
Soluzione a +href *= *"

In un file CSV (Comma Separated Value), in cui i dati sono separati da virgole, vogliamo trovare di volta in volta tutti i caratteri fino alla prima virgola esclusa. Scrivi la regex necessaria (suggerimento: conviene usare la negazione...).
Soluzione [^,]*

Descrivi con parole tue che cosa può trovare P[0-9]{2}
Soluzione Ogni P seguita esattamente da due cifre.

Sfruttando le possibilità di .* scrivi la regex che ti fa trovare le intere linee che iniziano con una cifra.
Soluzione ^[0-9].*

Go!Torna al testo

Gruppo 5

Descrivi quale tipo di input viene accettato dalla regex ^CAP\.[0-9]+$
Soluzione La stringa CAP seguita da un punto e da almeno una cifra.

All'interno di una classe di caratteri [ab] devi includere il segno meno, ma non vorresti metterlo come primo o ultimo carattere dentro le parentesi quadre. C'è un altro modo? Se sì, qual è?
Soluzione [a\-b]

Scrivi la regex che trova il nome del file nel seguente testo:
il file fiore.bmp è un file bitmap.
Soluzione fiore\.bmp

Migliora l'esempio del testo sui numeri decimali aggiungendo l'opzione che l'utente possa inserire anche numeri dotati di segno.
Soluzione ^[+-]?(0|[1-9][0-9]*)(\.[0-9]+)?$

Scrivi la regex che accetta come unico input un numero decimale con esattamente due cifre decimali.
Soluzione ^(0|[1-9][0-9]*)(\.[0-9]{2})$

In un form di registrazione, si chiede all'utente di immettere un nome a sua scelta, che non può iniziare con un punto ma può contenere numeri, lettere minuscole, punti, segni meno ( - ) e segni di sottolineato ( _ ). Scrivi la regex che può validare questo input.
Soluzione ^[a-z0-9_-]+[.a-z0-9_-]*$

Go!Torna al testo

torna su home

Valid XHTML 1.0! Valid CSS 2!

© MLC 2003-2004