Murmelin: Ort in DB finden - wie?

Beitrag lesen

Hallo,

in einem europäischen Projekt habe ich ein Eingabefeld für die Ortssuche. Man kann unformatiert die Landeskennung, die Postleitzahl und/oder den Ortsnamen eingeben.

Wobei die Postleitzahl im Ausland nicht-numerische Zeichen enthalten kann (GB CH65 Ellesmere Port). Nun versuche ich, aus der Eingabe Landeskennung, Postcode und Ortsnamen zu separieren. Mit mäßigem Erfolg.

Bei "Bad Neuenahr" wird "Bad" für die Landeskennung gehalten, denn die darf ja dreistellig sein wie "IRL" und Ortsnamen können beliebig viele Leer- und Sonderzeichen und beliebig viele Worte enthalten wie etwa
Frankfurt (Main), Frankfurt/Oder, Neustadt an der Weinstr.

Ich suche viermal nacheinander, jedesmal erweitere ich die Suchbegriffe mit dem Joker-Zeichen % Wenn also Petersburg nicht gefunden wird, dann aber %Petersburg oder %Petersburg%

Und ich speichere die nicht-gefundenen Eingaben zur Kontrolle. Zum Beispiel
%Gross%Gerau% (Ort schreibt sich mit ß statt ss)
%fano% (die Insel heisst Fanø, das gibt's auf deutschen Tastaturen nicht)
%peterburga% (entweder Санкт-Петербурга oder St. Petersburg)

Und ich sehe, dass nicht nur Orte, sondern auch andere Suchbegriffe eingegeben werden wie bei Google.

Kurzum: Ich beisse mir die Zähne aus. Da das Problem aber nicht neu sein dürfte, gibt es sicher schon irgendwo eine Lösung? Offenbar gibt es auch schriftcodeübergreifende Lösungen. Wenn ich bei Youtube etwas mit lateinischen Buchstaben suche, werden auch Videos vorgeschlagen, deren Titel kyrillisch oder arabisch ist.

Lieben Gruß, Murmelin