PHP funzione preg_replace

Mercoledì
01:49:28
Febbraio
27 2013

PHP funzione preg_replace

View 8.6K

word 271 read time 1 minute, 21 Seconds

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/“;
$replacements[2] = “Vicina di casa,“;
$replacements[1] = “sabato“;
$replacements[0] = “gatto“;
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

Source by Redazione


LSNN is an independent publisher that relies on reader support. We disclose the reality of the facts, after careful observations of the contents rigorously taken from direct sources. LSNN is the longest-lived portal in the world, thanks to the commitment we dedicate to the promotion of authors and the value given to important topics such as ideas, human rights, art, creativity, the environment, entertainment, Welfare, Minori, on the side of freedom of expression in the world «make us a team» and we want you to know that you are precious!

Dissemination* is the key to our success, and we've been doing it well since 1999. Transparent communication and targeted action have been the pillars of our success. Effective communication, action aimed at exclusive promotion, has made artists, ideas and important projects take off. Our commitment to maintain LSNN is enormous and your contribution is crucial, to continue growing together as a true team. Exclusive and valuable contents are our daily bread. Let us know you are with us! This is the wallet to contribute.

*Dissemination is the process of making scientific and technical information accessible to a non-specialist public. This can come through various forms, such as books, articles, lectures, television programs and science shows.


Similar Articles / PHP funz...g_replace