Manuale PHP
Indietro |  | Avanti

# CXIII. Funzioni per le espressioni regolari (POSIX estesa)

# Introduzione

> Suggerimento: Il PHP, utilizzando le funzioni PCRE, supporta anche le espressioni regolari con una sintassi compatibile con Perl. Queste funzioni supportano riconoscimenti "pigliatutto", asserzioni, criteri condizionali, e diverse altre caratteristiche che non sono supportate dalla sintassi POSIX estesa.

Avvertimento
Queste funzioni per l'espressioni regolari non sono binary-safe. Le funzioni PCRE lo sono.

In PHP, le espressioni regolari sono utilizzate per complesse manipolazioni di stringhe. Le espressioni regolari utilizzate da PHP sono di tipo POSIX esteso così come definito in POSIX 1003.2. Per una descrizione completa delle espressione regolari POSIX, vedere la pagina del manuale di regex inclusa nella directory di regex nella distribuzione di PHP. Questa è in formato man, pertanto per poterle leggere occorre eseguire man /usr/local/src/regex/regex.7.

# Requisiti

Non sono necessarie librerie esterne per utilizzare questo modulo.

# Installazione

Avvertimento
Non variare TYPE se non si sa cosa si sta facendo.

Per abilitare il supporto a regex occorre configurare il PHP con --with-regex[=TYPE]. TYPE può essere: system, apache, php. Per default si usa php.

La versione per Windows di PHP ha già compilato il supporto per questo modulo. Non occorre caricare alcun modulo addizionale per potere utilizzare queste funzioni.

# Configurazione di Runtime

Questa estensione non definisce alcuna direttiva di configurazione in `php.ini`

# Tipi di risorse

Questa estensione non definisce alcun tipo di risorsa.

# Costanti predefinite

Questa estensione non definisce alcuna costante.

# Esempi

Esempio 1. Esempi di espressione regolare

`<?php
/* Restituisce vero se "abc"
viene trovata ovunque in $string. */
ereg("abc", $string);
/* Restituisce vero se "abc"
viene trovata all'inizio di $string. */
ereg("^abc", $string);
/* Restituisce vero se "abc"
viene trovata alla fine di $string. */
ereg("abc$", $string);
/* Restituisce vero se il browser
è Netscape 2, 3 oppure MSIE 3. */
eregi("(ozilla.[23]|MSIE.3)", $HTTP_USER_AGENT);
/* Posizione tre parole separate da spazio
in $regs[1], $regs[2] e $regs[3]. */
ereg("([[:alnum:]]+) ([[:alnum:]]+) ([[:alnum:]]+)", $string, $regs);
/* Posiziona il tag <br /> all'inizio di $string. */
$string = ereg_replace("^", "<br />", $string);
/* Posiziona il tag <br /> alla fine di $string. */
$string = ereg_replace("$", "<br />", $string);
/* Toglie ogni carattere di invio
da $string. */
$string = ereg_replace("\n", "", $string);
?>`

# Vedere anche:

Per maggiori dettagli sulle espressioni regolari compatibili con Perl vedere il capitolo sulle funzioni PCRE. La funzione fnmatch() fornisce il riconoscimento dei caratteri jolly tipici della linea di comando.

Indietro | Partenza | Avanti
posix_uname | Risali | ereg_replace