La funzione ricerca in testo i criteri impostati in espressione_regolare. Se riconosce dei testi, li sostituisce con sostituto. Se si specifica limite, verranno sostituiti solamente limite testi riconosciuti; se viene omesso, oppure impostato a -1, verranno sostituiti tutti i testi riconosciuti.
Il parametro sostituto può contenere riferimenti nella forma di \\n, oppure, a partire dalla versione 4.0.4 di PHP, $n , con la preferenza per la seconda sintassi. Questo tipo di riferimento verrà sostituito dal testo che soddisfa l’n -esimo criterio presente in espressione_regolare . Sono ammessi numeri compresi tra 0 e 99 inclusi. Il valore 0 (\\0 oppure $0) si riferisce al testo riconosciuto tramite tutta l’espressione regolare passata. Nel conteggio dei criteri di riconoscimento presenti, sono contate le parentesi aperte da sinistra verso destra partendo da 1.
Quando si lavora con un criterio di sostituzione in cui un riferimento all’indietro è immediatamente seguito da un'altro numero (ad esempio un numero che segue immediatamente il criterio riconosciuto), non si possono utilizzare le solite notazioni, \\1, per i riferimenti all’indietro. Ad esempio, il testo \\11 confonderebbe preg_replace() poiché non saprebbe se si desidera il riferimento all’indietro \\1 seguito dal numero 1, oppure se è desiderato il riferimento \\11 seguito da niente. In questi casi la soluzione consiste nell’uso di \${1}1. In questo modo si crea un riferimento all’indietro $1 isolato dal numero 1.
#1 Uso dei riferimenti all’indietro seguiti da numeri
: Risultato: April 1,2013
$string = “April 15, 2013“; $pattern = “/(\w+) (\d+), (\d+)/i“; $replacement = “\${1}1,\$3“; echo preg_replace($pattern, $replacement, $string); ?> #2 Uso di matrici indicizzate con preg_replace()
La tua amica esce di domenica con il cane
$string = “La tua amica esce di domenica con il cane.“; $patterns[0] = “/amica/“; $patterns[1] = “/domenica/“; $patterns[2] = “/cane/“;/div> $replacements[2] = “Vicina di casa,“; $replacements[1] = “sabato“; $replacements[0] = “gatto“;/div> echo preg_replace($patterns, $replacements, $string); ?> risultato: La tua Vicina di casa, esce di sabato con il gatto.sono state sostituite tre parole con nuove parole anche composte (Vicina di casa)
Silvia M. Carrassi
Ultimi Articoli
Borse di studio universitarie, Regione Lombardia stanzia oltre 114 milioni per il 2026/2027
Maltempo in Lombardia, formalizzata la richiesta di stato di emergenza nazionale
Tumore raro, intervento robotico al San Gerardo di Monza salva l'organo a una giovane madre
Due rimpatri sanitari: Regione Lombardia riporta a casa due cittadine da Albania e Grecia
MOBIDAYS, Milano dedica una settimana alla mobilità per tutti e tutte
Bagni sicuri in lago e fiume: i consigli di Carlo Gionne dopo i recenti annegamenti
Chiamate di telemarketing: come ho smesso di riceverne 40 al giorno
Meta sotto processo negli USA: l’accusa è che alcune funzioni dei social creino dipendenza
“Se nasci mela, non puoi diventare fragola”: Vincenza Palmieri denuncia il “Sistema Piemonte”
Regione Lombardia, allerta gialla per temporali: quadro valido fino al 17 agosto