Du könntest erstmal alles rausfiltern, was nicht benötigt wird (im, SC, S.Club, Sportclub usw.) und wenn dann möglichst nur noch der Stadtname vorhanden ist, dann diesen in den restlichen Einträgen suchen.
Wird aber bei größeren Städten bestimmt wieder Probleme geben (hier in DD haben wir ja auch nicht nur einen SC).
es gibt auch irgendwo eine Funktion (vergess ständig wie die heißt), welche einen String prozentual vergleicht (also wieviel übereinstimmt)
[add]
in PHP gibt's Fu nktionen wie SoundEx Levenshtein
>
http://www.selfphp.info/praxisbuch/p...e=177&group=31
[/add]
[add2]
ich würd mal denken, das bei dir keine/kaum Schreibfehler vorkommen, aber die Wörte wohl auch mal in einer etwas anderen Reihnfolge vorkommen können.
Also wäre es vermutlich besser den String in seine Einzelwörter zu zerlegen (bestimmte Schlüsselwörter wie "im", "Sportclub", "SC" usw. zu entfernen, mit sowas wie Levenshtein zu vergleichen und die Ergebnisse zusammenzurechnen)
[/add2]
womöglich könnte man das dann mit 'ner erweiterbaren List optimieren.
also wo alle bisher bekannten Möglichkeiten für jeden Sportclub drinsteht.
> erst schaut das Programm in die Liste ob es den Namen schon kennt
> wenn er ihn schon kennt, dann trägt er den "bevorzugten" Namen ein
> und wenn nicht, dann wird halt der Benutzer gefragt, ob er den Namen aus der Liste (bevorzugte Namen) auswählt (vo das Programm wieder wie oben eine Vorauswahl anzeigt)
> und wenn da nichts vorhanden ist, dann alle Sportclubs anzeigen und eventuell einen neuen Namen eintragen