Obtener cadena entre dos cadenas

Mi cadena es: "reply-234-private", quiero obtener el número después de "reply-" y antes de "-private", es "234". He intentado con el siguiente código pero devuelve un resultado vacío:

$string = 'reply-234-private';
$display = preg_replace('/reply-(.*?)-private/','',$string);
echo $display;