Я нашел эту функцию в нижних комментариях страницы обрезки на php.net, которые, кажется, делают то, что вы хотите
function trimString($input, $string){
$input = trim($input);
$startPattern = "/^($string)+/i";
$endPattern = "/($string)+$/i";
return trim(preg_replace($endPattern, '', preg_replace($startPattern,'',$input)));
}