str_replace non credo lo faccia, ma puoi provare una cosa tipo questa

Codice PHP:
<?php
$string 
"marco_paolo_mario_luigi";
$exString explode("_"$string);

$finString $exString[0] . "_" $exString[1];
$i 2;
while(
$i count($exString)) {
    
$finString .= " " $exString[$i];
    
$i++;
}

echo 
$finString;
?>

oppure con le espressioni regolari e preg_replace