- preg_replace: documentation ( source)
<?php
$str = 'test-test-example-demo-1a-3321-0-3555-0';
$patterns = [
'/[0-9]+[a-zA-Z]/', //удаляем все цифры после которых есть буквы
'/[a-zA-Z][0-9]*/', //удаляем все буквы и цифры после них, если они имеются
'/-(?=-)/', //удаляем все оставшиеся парные '-'
'/^-/', //удаляем '-' в начале строки
'/-$/' //удаляем '-' в конце строки
];
echo preg_replace($patterns, '', $str);