lunedì 31 marzo 2008

funzione ereg

La funzione ereg di PHP, viene utilizzata per il riconoscimento di espressioni regolari.
Questa è la specifica:
bool ereg ( string epressione_regolare, string stringa [, array regs])
Per l'esattezza ricerca in variabili stringa, testi che possano incrociarsi con l'espressione regolare indicata in espressione_regolare distinguendo tra lettere minuscole e maiuscole.Se la variabile stringa viene riconosciuta, la funzione restituisce true, altriemnti false.
Se la funzione viene chiamata utilizzando il terzo parametro regs, il testo riconosciuto sarà memorizzato nella matrice regs. L'indice 1, $regs[1], conterrà la sottostringa che parte dalla prima parentesi sinistra; $regs[2] conterrà la sottostringa a partire dalla seconda e così via. L'indice 0, $regs[0], conterrà la copia completa della stringa riconosciuta.
Vediamo adesso un esempio in cui una data in formato ISO (YYYY-MM-DD) verrà visualizzata nel formato DD.MM.YYYY:


if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $data, $regs)) {
echo "$regs[3].$regs[2].$regs[1]";
} else {
echo "Formato di data non valido: $data";
}
?>

Analizziamo la stringa ([0-9]{4})-([0-9]{1,2})-([0-9]{1,2}) ... allora:
Con questa stringa voglio dire che la nostra variabile $data, verrà riconosciuta solo se composta:da 4 cifre {4} composte da numeri che vanno da 0 a 9 [0-9], seguite da un - (trattino) poi da 1 o 2 cifre {1,2} che vann da 0 a 9 seguite da un - (trattino) e infine ancora uno o due cifre che vanno da 0 a 9.

Nessun commento: