Menü

Postleitzahl Formate im Ländervergleich: Ziffern, Buchstaben, Lücken

Postleitzahl Formate unterscheiden sich von Land zu Land: reine Ziffern, beigemischte Buchstaben, gegliederte Codes und Gebiete ganz ohne Postsystem. So gehen Sie damit um.

Veröffentlicht am

  • Testdaten
  • Adresse
  • Postleitzahlen

Postleitzahl Formate gehören zu den ersten Dingen, die ein internationales Formular falsch macht. Ein Feld, das ein paar Ziffern annimmt und es dabei belässt, weist ganze Länder zurück, beschädigt andere stillschweigend und lässt Daten durch, die kein Postbetreiber wiedererkennen würde. Die Regeln sind nicht kompliziert, aber sie sind lokal, und es gibt kein einzelnes Muster, das die Welt abdeckt.

Dieser Artikel führt durch die wichtigsten Familien der Postleitzahl, durch die Gebiete ganz ohne Postleitzahl, durch die wiederkehrenden Fallen rund um führende Nullen und Längen und durch das, was in einem Formular oder einer Datenbank zu tun ist, damit die Daten den Kontakt mit echten Nutzern überstehen.

Die vier Familien der Postleitzahl

Die meisten Postleitzahlen fallen in eine von vier groben Formen. Die Grenzen sind unscharf — ein Land kann sein Schema wechseln, und ein Code kann zu mehr als einer Familie gehören —, aber die Familien sind ein nützliches Denkmodell für die Prüfung.

  • Reine Ziffern fester Länge. Viele Länder verwenden eine Folge von Ziffern, häufig vier bis sechs. Die Länge ist innerhalb des Landes fest, was eine einfache Längenprüfung möglich macht.
  • Ziffern mit fester Struktur. Nordamerikanische Codes zerfallen in zwei Teile, und der zweite Teil ist in der Praxis optional, sodass dieselbe Adresse in einer kurzen oder einer langen Version auftreten kann.
  • Buchstaben gemischt mit Ziffern. Kanada, das Vereinigte Königreich, die Niederlande und Irland sind vertraute Beispiele. Einige wechseln Buchstaben und Ziffern in festem Rhythmus ab, andere gruppieren Zeichen in Abschnitte mit unterschiedlicher Bedeutung.
  • Gebietscode plus Zustellpunkt. Das Vereinigte Königreich und die Niederlande sind die klassischen Fälle: Der führende Abschnitt bezeichnet einen Bezirk oder eine Stadt, der nachfolgende Abschnitt grenzt auf eine Straße oder eine kleine Gruppe von Adressen ein.

Eine fünfte Kategorie ist ebenso wichtig: Länder und Gebiete ganz ohne Postleitzahlsystem. Dort nach einer Postleitzahl zu fragen, ist kein Prüfproblem, das zu lösen wäre, sondern eine Frage, die nie hätte gestellt werden sollen.

Welche Länder haben keine Postleitzahlen?

Nicht wenige, darunter mehrere Orte, an die Menschen regelmäßig Post schicken. Wo es kein Postsystem gibt, zwingt ein Formular, das auf einem Wert besteht, den Nutzer, einen zu erfinden — und die nahezu universelle Erfindung ist eine Folge von Nullen oder die Wiederholung einer einzelnen Ziffer. Das Ergebnis ist eine Datenbank voller Platzhalterwerte, die wie Daten aussehen und keine Information tragen.

Die praktische Antwort hat zwei Teile. Erstens: Machen Sie das Feld in jedem Formular optional, das mehr als ein Land bedient, denn Optionalität ist die einzige Regel, die überall richtig ist. Zweitens: Wenn ein nachgelagertes System wirklich einen Wert verlangt, erzeugen Sie einen offensichtlichen Platzhalter und kennzeichnen Sie ihn in den Notizen des Datensatzes als solchen, statt vorzugeben, es sei ein echter Code. Die Länderseiten für die Märkte, die Sie bedienen, zeigen schnell, welche Konventionen wo gelten.

Warum führende Nullen verschwinden

Eine Postleitzahl ist ein Identifikator und keine Zahl. Identifikatoren werden verglichen, verknüpft, sortiert und kopiert — niemals addiert, niemals gemittelt, niemals mit einem Größer-als-Zeichen verglichen. Trotzdem ist es außerordentlich verbreitet, eine Postleitzahlspalte als Ganzzahl anzulegen, und diese eine Entscheidung zerstört die führenden Nullen, auf die sich viele nationale Schemata stützen.

Der Schaden ist leise. Ein Code, der mit Null beginnt, wird kürzer, sobald er eine numerische Spalte, eine Tabellenkalkulation, ein JSON-Zahlenfeld oder ein System passiert, das unbedeutende Ziffern abschneidet. Nichts meldet einen Fehler. Der Wert hört schlicht auf, der Code zu sein, der er war, und eine spätere Postleitzahlabfrage scheitert aus Gründen, die mit dem Import, der sie verursacht hat, nichts zu tun zu haben scheinen.

Dieselbe Überlegung gilt für Trennzeichen. Einige nationale Formate werden konventionell mit einem Leerzeichen zwischen den Abschnitten geschrieben, und Nutzer tippen sie uneinheitlich. Speichern Sie die kanonische Form ohne Trennzeichen oder speichern Sie das Trennzeichen einheitlich — führen Sie die Normalisierung aber an der Grenze durch und lassen Sie den Wert danach in Ruhe.

Sind Postleitzahlen und Verwaltungsgebiete dasselbe?

Nein, und die Verwechslung verursacht echte Fehler. Eine Postleitzahl beschreibt eine Zustellroute und keine Verwaltungsgrenze. Zustellgebiete und Verwaltungsgebiete überschneiden sich, fallen aber nicht zusammen: Eine Postleitzahl kann Teile zweier Städte umfassen, und eine Stadt kann mehrere Postleitzahlen umspannen. Codes werden neu zugewiesen, wenn sich Routen ändern, ohne dass jemand eine Provinz neu zeichnet.

Daraus folgt, dass Sie aus einer Postleitzahl keinen Ort und keine Region mit Sicherheit ableiten können. Sie können eine Postleitzahl als schwaches Indiz nutzen — sie liegt meist in einem bekannten Bereich für eine Region, und eine Abweichung zwischen Region und Postleitzahl ist ein starkes Signal dafür, dass mindestens einer der beiden Werte falsch erfasst wurde. Behandeln Sie das als Prüfung, die sich lohnt, und nicht als verbindliche Nachschlagetabelle.

Das ist auch der Grund, warum die präfixbasierte Prüfung, die in manchen Ländern gut funktioniert, sich nicht übertragen lässt. Eine Präfixregel kodiert eine Zustellgeografie, und die Zustellgeografie jedes Landes ist anders. Den weiteren Zusammenhang behandelt der Leitfaden zu Adressvalidierung und Normalisierung.

Postleitzahlen in echten Formularen

Ein paar Gewohnheiten halten ein Formular über Ländergrenzen hinweg ehrlich.

  • Machen Sie das Feld optional, solange Sie nicht für ein bestimmtes Land sicher wissen, dass ein Code existiert und erforderlich ist.
  • Ändern Sie Beschriftung und Hilfetext mit dem ausgewählten Land, denn die Form eines gültigen Codes ist nicht übertragbar.
  • Akzeptieren Sie bei der Eingabe sowohl die Form mit als auch ohne Leerzeichen und normalisieren Sie für die Speicherung auf eine davon.
  • Erzwingen Sie keine feste Länge global. Eine feste Länge ist erst dann vertretbar, wenn das Land bekannt ist.
  • Wandeln Sie nicht stillschweigend in Großbuchstaben um, wenn ein Schema in einem anderen System groß- und kleinschreibungssensitiv ist; entscheiden Sie sich für eine kanonische Schreibweise und wenden Sie sie einheitlich an.

Ein durchgerechnetes Beispiel, in dem dieselbe Ziffernfolge die Regel eines Landes erfüllt und die eines anderen verfehlt, steht im Leitfaden zur US-Adressstruktur, der die fünfstellige und die erweiterte Form beschreibt.

Für Entwickler: Spalten, Constraints und Länderwechsel

Speichern Sie eine Postleitzahl als Text, in großzügiger Länge, ohne numerische Umwandlung irgendwo im Pfad. Irgendwo zwischen acht und zwölf Zeichen ist für jedes gängige Schema bequem, und der zusätzliche Platz kostet nichts im Vergleich zu einer späteren Migration. Entfernen Sie umgebende Leerzeichen bei der Eingabe, entscheiden Sie, ob interne Leerzeichen erhalten bleiben, und wenden Sie diese Entscheidung an einer einzigen Stelle im Code an statt bei jedem Konsumenten.

Halten Sie den Ländercode immer neben der Postleitzahl. Eine Postleitzahl ohne ihr Land ist mehrdeutig, und keine einzelne Prüfregel greift für sie. Wenn das Land in einer Oberfläche wechselt, leeren oder prüfen Sie das Postleitzahlfeld neu, statt einen Wert stehen zu lassen, der gegen die Regeln des vorherigen Landes geprüft wurde.

Und schließlich: Seien Sie auf Änderungen vorbereitet. Formate werden erweitert, neue Codes eingeführt, und ein Schema, das heute fest aussieht, kann morgen eine Variante bekommen. Eine Prüfregel sollte streng genug sein, offensichtliche Tippfehler zu erkennen, und locker genug, ein unerwartetes Format zuzulassen. Wenn ein Code die Prüfung nicht besteht, protokollieren Sie den abgelehnten Wert — niemals den ganzen Datensatz —, damit Sie eine schlechte Regel von einer schlechten Eingabe unterscheiden können.

Nächste Schritte

Prüfen Sie eine Postleitzahlspalte in Ihrem eigenen Schema und stellen Sie fest, ob sie Text ist, ob sie führende Nullen toleriert und ob der Ländercode mitreist. Bauen Sie dann einen kleinen Fixture-Satz, der ein ziffernreines Land, ein Land mit Buchstaben und Ziffern, einen gegliederten Code und ein Land ganz ohne Postsystem enthält, und schicken Sie ihn durch Ihr Formular. Der Adressgenerator erzeugt Codes in der lokalen Form jedes Landes, das er abdeckt, was diesen Fixture-Satz schnell zusammengestellt macht. Für eine Fixture erzeugte Codes sind von der Konstruktion her synthetisch: Sie prüfen das Format, ohne auf ein echtes Zustellgebiet zu zeigen, und keiner von ihnen sollte auf einem Paket landen.

Weiterlesen

Artikel zu Fake-Adressgenerator