gudn tach!
$str = "test_-_mit_Fehler";
$str = preg_replace('=(.*)_-_(.*)=Uis','\1', $str);ich bekomme als string nun "testmit_Fehler", obwohl nur "test" gewünscht wäre.
weisst du, was der U-modifier macht? an ihm in kombination mit dem zweiten .* liegt es.
die beiden anderen modifier sind hier uebrigens ebenfalls ueberfluessig.
gleiches gilt fuer die zweite klammerung.
also:
preg_replace('=(.*)_-_.*=','$1', $str);
prost
seth