Javascript e espressioni regolari per codici postali

June 3

Javascript e espressioni regolari per codici postali


Una delle migliori pratiche per la creazione di form HTML è quello di convalidare i dati forniti dall'utente. Una delle migliori pratiche per la validazione del campo codice postale è quello di testare contro una espressione regolare per determinare se è conforme alle regole per codici postali del paese selezionato. JavaScript è il linguaggio più utilizzato per recuperare dati da moduli HTML e validare l'input dell'utente utilizzando le espressioni regolari.

Espressioni regolari

Le espressioni regolari sono lo strumento ideale da utilizzare per determinare se un codice postale dall'utente ingresso è conforme alle norme del codice postale in un determinato paese. Le espressioni regolari consentono di definire un modello usando una sintassi personalizzato, abbinare una stringa al modello, determinare se la stringa è conforme al modello, ed estrarre porzioni di stringhe e sottoinsiemi del pattern matching. Ad esempio, la seguente espressione regolare definisce un codice postale accettabile degli Stati Uniti che si compone di cinque cifre e facoltativamente include un trattino e quattro cifre aggiuntive:

^ \ D {5} ([-] \ d {4})? $

JavaScript

JavaScript è la lingua da utilizzare per la convalida dell'input dell'utente, perché funziona sul computer del cliente. Ciò significa che l'input dell'utente può essere convalidato e messaggi possono essere visualizzati senza la necessità di inviare dati a un server Web o aggiornare una pagina Web. Con JavaScript, è possibile accedere al valore corrente di un campo in un modulo HTML utilizzando la gerarchia Document Object Model (DOM) di una pagina Web. Ad esempio, il seguente frammento di codice memorizza il valore corrente del campo "postale" su un modulo HTML denominato "input" in una variabile denominata "CAP"

var = postale document.input.postal.value;

Dichiarare espressioni regolari

In JavaScript, una espressione regolare è creato racchiudendo il modello in caratteri barra. Per esempio, la seguente istruzione JavaScript dichiara una variabile che contiene il modello di espressione regolare utilizzata per convalidare un codice postale canadese:

var caRegex = / ^ [ABCEGHJKLMNPRSTVXY] {1} \ d {1} [AZ] {1} * \ d {1} [AZ] {1} \ d {1} $ /;

Metodi di espressioni regolari

JavaScript è dotato di metodi che supportano utilizzando le espressioni regolari. Il metodo "match" restituisce "vero" o "falso" per indicare se il valore di una variabile corrisponde a un modello di espressione regolare. Il metodo "exec" viene utilizzato per estrarre porzioni di una stringa che corrispondono sottoinsiemi di modelli di espressioni regolari. Ad esempio, il seguente codice assegna "vero" o "falso" per una variabile, a seconda che il valore di utente-input di un codice postale statunitense corrisponde al modello di espressione regolare che definisce validi codici postali statunitensi:

var corrisponde = false;
if (/^\d{5}([-]\d{4})?$/.match(document.input.postal.value)) {
partite = true;
}