Adresse parsen

Hallo,

ich suche eine Delphi-Unit die Adressen formatieren kann.

Z.B. Name und Vorname trennen, oder Straße und Hausnummer trennen.

Alles was ich mir da ausgedacht habe ist nicht besonders zuverlässig.

Ich möchte den Benutzer eine Adresse eingeben lassen.Und das Programm soll anhand der Eingaben feststellen, dass z.b. die fünfstellige Zahl die Postleitzahl und das dahinter der Ort ist etc.

Sollte es sowas noch nicht geben, dann suche ich noch eine Funktion, mit der ich überprüfen kann (möglichst ohne Exception) ob ein Zeichen eine Zahl oder ein Buchstabe ist…

Vielen Dank schon ein mal!!!

Bis dann, dann

S. Lorenz

function isNumeric(Zeichen: Char): Boolean;
begin
if (Zeichen in [0…9]) then result := True else Result:=False;
end;

Warum erfasst du die Adressen nicht formatiert???

Da brauchst du ein paar gute Heuristiken…
Ich hab mal entsprechende VB-Routinen gebastelt, aber auch die scheitern an den diversen Sonderfällen, z.B.:

Straßennamen wie
„Straße des 17ten Juni“ in Berlin
„Feldweg 65“ in Hamburg
„Klgv. 117“ in Hamburg
„G 7“ in Mannheim

Hausnummern wie
„Haus 11“ in diversen Käffern
(„Haus“ ist nicht die Straßenbezeichnung)

Bezeichnungen wie
„Altenheim Ebertshof, Zimmer 11“
(11 ist dann eben nicht die Hausnummer)

Vorname-/Nachname-/Titel-Kombinationen wie
„Walter Leisler Kiep“
„Pankratia Siegmunda Prinzessin zu Sayn-Wittgenstein Hohenlohe“
usw.

Reinhard

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi Rüdiger,
weißt Du denn nicht, daß Du Dich mit diesem Konstrukt

if (Zeichen in [0…9]) then result :=
True else Result:=False;

als „Unprofi“ outest?

Gruß
Martin

PS: Result := Zeichen in [0…9]

Man möge mir verzeihen ;o)