Sure I'll dig around in the php manual and figure this out for you. But next time it's going to cost you my going rate 😉
This will only work in two cases:
1) you have a limited number of endings
2) you store all possible endings in the database (this will require modifying the code below to pull them out of the database into an array).
Let's assume that $myVar contains the data you want to modify and $newNum contains the new number portion of $myVar
$i = 0;
while(!ereg("*|+",substr($myVar,$i,1)) && $i < strlen($myVar)) {$i++;}
$number = substr($myVar,0,($i-1));
$end = substr($myVar,$i);
$number = 2003; //or whatever you want
$newVar = $number . $end;