JavascriptProgrammazione

Espressioni regolari

Le regular expressions sono uno strumento per il controllo formale della sintassi di una stringa al fine di verificare che corrisponde ad un modello predefinito.

Un esempio è la corretta formattazione dell’indirizzo email formata da una username la chiocciola @ il dominio il punto . e l’estensione:

[email protected]

Esistono diversi modi per dichiarare il pattern di un’espressione regolare:

  • var espress = /pattern/modificatori;
    • i – non distingue maiuscolo e minuscolo;
    • g – ricerca globale;
    • m – ricerche multiline;
  • oggetto RexExp(‘pattern’, modificatori);

Il controllo avviene tramite il metodo test() .

Il metodo exec() invece restituisce una stringa corrispondente al pattern.

Analizziamo la sintassi per costruire dei pattern:

  • ^ – indica come deve iniziare;
  • [e] – indica qualsiasi carattere tra quelli indicati;
  • (…) – identifica un gruppo di caratteri, | identifica un’alternanza all’interno del gruppo;
  • a-z e 0-9 – indica che la stringa può contenere i caratteri che vanno da a a z e da 0 a 9, anteponendo ^ esclude il range di caratteri;
  • + – deve contenere almeno uno dei caratteri presenti tra le parentesi quadre;
  • $ – indica il termine della stringa;
  • \ – ci permette di inserire un metacarattere;
  • . – qualsiasi carattere escluso il ritorno a capo;
  • \w – stringa alfanumerica minuscola;
  • \W – stringa alfanumerica maiuscola;
  • \d – qualsiasi cifra;
  • \D – qualsiasi carattere non numerico;
  • \s – spazio vuoto;
  • \S – qualsiasi carattere ad eccezione dello spazio vuoto;
  • \t – tabulazione;
  • \r – ritorno a capo;
  • \n – nuova linea;
  • {x} – indica il carattere precedente per x volte;
  • {x,} – indica il carattere precedente per x volte o più;
  • {x,y} – il carattere precedente si ripete x volte ma non più di y volte;
  • ? – indica il carattere precedentye per 0 o 1 volta;
  • * – equivale {0,};
  • + – equivale {1,}