Moin,
warum denn immer gleich mit Kanonen auf Spatzen schießen? Die normale Stringfunktion substr_count ist da doch viel besser geeignet, als RegExe.
if (substr_count($string, '-') > 1 or substr_count($string, '+') > 1)
echo 'Fehler.'
else
echo 'OK.'
Gruß,
Take