es gibt sicherlich irgendwelche "match" Funktionen die den String vergleichen.
Beispiel: similar_text("String1", "string 2", $percent);
wenn übereinstimmung über 50% liegt, kann man das Ergebnis sicher nehmen.

Zur not eben ein paar sonderfälle deklarieren wie "-", "ß" etc. ersetzen / entfernen und denn vergleichen.