Esercizi! Esercizi!

Esercizi G6-G8

Gruppo 6

Se scrivo \t\d trovo due caratteri: il carattere tab seguito da una cifra; ma se scrivo [\t\d] che cosa trovo?
Soluzione Un solo carattere, che può essere un tab o una cifra.

A che cosa può servire una regex come \bp\w+ ?
Soluzione A trovare parole che iniziano con "p".

Guarda le lettere evidenziate in questo brano. Quale regex potrebbe trovarle?
Caro Conte Violante,
finalmente riesco a mandarLe questa esegesi su Dante, che in molti aspetti ho trovato davvero interessante e brillante. In appendice sono riassunte alcune note originali.
Cordialmente,
Marchesa Lante della Torre.

Soluzione \wnte\b

Vuoi eliminare da un testo tutti gli inutili spazi bianchi che ci possono essere all'inizio di una riga.
Scrivi la regex che te li fa trovare.
Soluzione ^\s+

Come nell'esercizio precedente, fai la stessa cosa ma per la fine di una riga.
Soluzione \s+$

In ogni email, o in ogni messaggio su un newsgroup, gli header sono separati dal corpo del messaggio da una riga bianca. Scrivi la regex che trova la riga bianca.
Soluzione ^\s*$

Devi validare un CAP (Codice di Avviamento Postale, sempre costituito da 5 cifre) inserito da un utente.
Scrivi la regex necessaria.
Soluzione ^\d{5}$

Scrivi la regex che valida una password costituita da una sola stringa lunga tra i 4 e i 10 caratteri, che inizi necessariamente con una cifra, ma possa poi contenere lettere, cifre e carattere di sottolineato.
Soluzione ^\d\w{3,9}$

Che cosa rappresenta \b[a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}\b ?
Soluzione Un valido indirizzo email.

Go!Torna al testo

Gruppo 7

Osserva questa regex: Paragrafo (\d+)\.\d+ del capitolo \1 .
Scrivi qualche esempio che la regex potrebbe trovare.
Soluzione Paragrafo 4.1 del capitolo 4
Paragrafo 7.12 del capitolo 7
Paragrafo 15.2 del capitolo 15.

Quando si scrive al computer può capitare di inserire distrattamente due volte di seguito una stessa parola, come "il il", "uno uno". Scrivi la regex che ti permette di controllare se hai inserito parole doppie.
Soluzione \b(\w+)\s+\1\b

Riprendendo l'esempio del testo su ROMA, scrivi la regex che potrebbe trovare la stringa ROMA=ROMA usando un riferimento.
Soluzione ([AOMR]+)=\1

Ancora con l'esempio precedente, scrivi la regex che potrebbe trovare la stringa ROMA in serie A usando un riferimento.
Soluzione ([AOMR])+ in serie \1

Go!Torna al testo

Gruppo 8

Usando un quantificatore non-greedy scrivi la regex che trova del testo racchiuso tra doppi apici, come in questo esempio:
LOL è l'acronimo di "Laughing Out Loud"
Soluzione ".*?"

In HTML i commenti hanno questa forma: <!-- commento -->, dove "commento" può essere qualunque sequenza di caratteri, spazi o non spazi. Scrivi la regex che trova commenti in un file HTML.
Soluzione <!--[\s\S]*?-->

In XHTML i tag devono essere scritti in minuscolo e tutti gli elementi devono essere chiusi, anche quelli che non hanno un tag di chiusura. Per esempio <br> deve diventare <br />, <hr> deve diventare <hr />, e così via.
Scrivi la regex che sia "case sensitive" e che trovi tutti gli elementi che hanno questo tipo di chiusura.
Soluzione (?-i)<[a-z]+\w?.*?/>

Spiega quello che trova la regex ver(?=\d) .
Soluzione Trova le occorrenze di "ver" che sono seguite da una cifra.

Scrivi la regex che trova ogni "a" seguita da una vocale diversa da "a".
Soluzione a(?=[ieou])

Spiega quello che trova la regex \b\w+(?<!a)\b .
Soluzione Trova le parole che non finiscono in "a".

Go!Torna al testo

torna su home

Valid XHTML 1.0! Valid CSS 2!

© MLC 2003-2004