Salve, ho l'esigenza di sostituire in alcuni template delle parti di codice con preg_replace, prima tale operazione era effettuata con eregi_replcace:

l'obbiettivo è di togliere o sostituire solo quello presente tra due commenti, lasciando la formattazione inalterata....


esempio:

$string = eregi_replace("(.+)", '', $string);

adesso io dovrei fare lo stesso con preg_replace, aggiunti gli estremi / /i rispettivamente la
cosa funziona egraggiamente se viene posto tutto sulla stessa riga, va bene il problema sono i ritorni di riga, allora ho trovato una prima soluzione:


function eregi_replace_wrapper($pattern, $replacement, $string) {

$clean_string = preg_replace("/\n|\r/"," ",$string);

$wrap_pattern = "/".$pattern."/i";

$result = preg_replace($wrap_pattern, $replacement, $clean_string);

return $result;
}

il problema è che togliendo i ritorni di riga, ottengo quello che voglio ma il risultato è di mettere tutto su una riga.....

Non è indispensabile per il mio uso il case-insensitive in effetti tutti i commenti sono maiuscoli

ho provato ad usare il modificatore /s il (.*) ecc... ma non sono tanto esperto con le espressioni regolari....

ringrazio tutti per l'attenzione ed ogni eventuale consiglio

grazie