Используйте упреждающий просмотр, чтобы увидеть, является ли следующий блок набором чисел, и удалите завершающий пробел.Таким образом, он работает для любого количества наборов (что, я подозреваю, вам может понадобиться):
$string = "I want to go home 8890 7463 41234 and then go to 58639 6312 the cinema";
$newstring = preg_replace("/\b(\d+)\s+(?=\d+\b)/", "$1", $string);
// Note: Remove the \b on both sides if you want any words with a number combined.
// The \b tokens ensure that only blocks with only numbers are merged.
echo $newstring;
// I want to go home 8890746341234 and then go to 586396312 the cinema