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