Ti spiego il mio codice:
Codice PHP:
//Stringa originale
$pippo="prova1 ; prova2; ciao ) ";
//Stringa da sostituire
$newStr "nuovo testo";

/*
Cerco la posizione dell'ultima occorrenza del ';', faccio +2
in modo che mi prenda anche l'eventuale spazio
*/
$pos strrpos($pippo";")+2;

/*sostituisco con la nuova stringa solo la parte di stringa
a partire dalla posione trovata in precedenza fino alla fine della stringa originale
*/
echo substr_replace($pippo$newStr$posstrlen($pippo)); 
ciao