JavaScript ed espressioni regolari

di: Andrea Chiarelli     07 Agosto 2006

Chi ha avuto la necessità di dover sviluppare programmi per manipolare testi avrà avuto modo di apprezzare la potenza e la flessibilità delle espressioni regolari.

Questo strumento è allo stesso tempo gioia e dolore per lo sviluppatore che deve individuare stringhe in un testo o sostituire parti di testo con altro o verificare che un testo segua un formato specifico.

Gioia perchè la potenza delle espressioni regolari è tale da lasciare talvolta sbalorditi; dolore perchè la loro sintassi è un po' criptica e, come se non bastasse, l'esistenza di alcune varianti generano un bel po' di confusione.

Una delle applicazioni più interessanti è legata al riconoscimento di linguaggi che fanno uso di markup come documenti XML e pagine HTML, o di formati per lo scambio di informazioni basati su stringhe come JSON. Così come si può riconoscere e manipolare il formato di un intero file di testo, è possibile verificare che una semplice stringa realizzi un certo formato (ad esempio la data o l'e-mail)

Per i programmatori PERL le espressioni regolari sono il pane quotidiano. Per buona parte dei programmatori JavaScript, invece, questo strumento è poco noto, se non addirittura ignorato. Eppure JavaScript ha un supporto nativo delle espressioni regolari che consente di fare alcune comuni elaborazioni in modo elegante ed efficiente.

Espressioni regolari

Le espressioni regolari sono schemi (o pattern) che descrivono sinteticamente un insieme di stringhe utilizzando specifici caratteri speciali detti metacaratteri. Avete presente i caratteri jolly del DOS? Quelli che servono per indicare un insieme di nomi di file, come ad esempio *.html per indicare tutti i file che hanno estensione .html? Ecco, questi non sono che un piccolissimo esempio di qualcosa di simile alle espressioni regolari. Diciamo innanzitutto che ciascun carattere e ciascun numero rappresenta se stesso. Quindi, ad esempio, l'espressione regolare test rappresenta proprio la stringa test.

I metacaratteri più usati sono rappresentanti dal punto (.), che indica un qualsiasi carattere singolo, l'asterisco (*), che indica la presenza di zero o più occorrenze del carattere precedente, il simbolo +, che indica la presenza di una o più occorrenze del carattere precedente, il punto interrogativo (?), che indica la presenza di zero o una occorrenza del carattere precedente.

Guide JavaScript

Guida Node.js

Il framework che permette di per usare V8, l'interprete JavaScript...

Canvas, guida ai framework

Canvas, tra gli elementi di HTML5 è forse quello di maggior impatto....

Guida jQuery UI

Creare siti ricchi e dinamici con jQuery UI, il progetto ufficiale...

Altre guide

Newsletter @JavaScript

Ogni martedì, direttamente nella tua e-mail: guide, articoli, script, novità e approfondimenti tecnici su JavaScript.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Webmaster base

18 Giugno 2012 a Milano
Disponibilità: 6 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso JQuery e Ajax per Webmaster

03 Luglio 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti

Corso Webmaster base

11 Giugno 2012 a Roma
Disponibilità: 7 Posti