Postleitzahl-Regex: französische PLZ in JS, PHP und HTML prüfen

Postleitzahl-Regex: französische PLZ in JS, PHP und HTML prüfen

Der folgende reguläre Ausdruck prüft eine französische Postleitzahl der Form „DDDDD“. Alle Ziffern werden genutzt. Die ersten beiden Ziffern stehen für das Département und laufen von 01 bis 98. Der Code darunter ist der reguläre Ausdruck, mit dem du das Format prüfst.

regulärer Ausdruck Postleitzahl

javascript
/^(?:0[1-9]|[1-8]\d|9[0-8])\d{3}$/

Weiter unten findest du reguläre Ausdrücke für die Postleitzahlen anderer Länder, du tauschst einfach den Ausdruck gegen den, den du brauchst.

Belgien

Postleitzahlen der Form „DDDD“, die erste Ziffer steht für die Provinz, die übrigen für die Zustellsektoren. Belgische Postleitzahlen beginnen nie mit einer Null.

javascript
/^(?:(?:[1-9])(?:\d{3}))$/
Schweiz

Vier Ziffern: die erste ist der Kreis, die zweite die Zone, die dritte die Route, die vierte die Nummer der Poststelle.

javascript
/^[1-9]\d{3}$/
Vereinigtes Königreich

Aufbau der britischen Postleitzahl

javascript
/^(?:GIR 0AA|(?:(?:(?:A[BL]|B[ABDHLNRSTX]?|C[ABFHMORTVW]|D[ADEGHLNTY]|E[HNX]?|F[KY]|G[LUY]?|H[ADGPRSUX]|I[GMPV]|JE|K[ATWY]|L[ADELNSU]?|M[EKL]?|N[EGNPRW]?|O[LX]|P[AEHLOR]|R[GHM]|S[AEGK-PRSTY]?|T[ADFNQRSW]|UB|W[ADFNRSV]|YO|ZE)[1-9]?\d|(?:(?:E|N|NW|SE|SW|W)1|EC[1-4]|WC[12])[A-HJKMNPR-Y]|(?:SW|W)(?:[2-9]|[1-9]\d)|EC[1-9]\d)\d[ABD-HJLNP-UW-Z]{2}))$/i
Deutschland

Postleitzahlen der Form „DDDDD“. Alle Ziffern werden genutzt. Die erste Ziffer steht für die Leitzone, die zweite für die Leitregion. Die übrigen Ziffern geben den Leitbereich und den Postort an.

javascript
/^\d{5}$/
Spanien

Fünf Ziffern, die ersten beiden geben die Provinz an. Dritte Ziffer: Großstadt. Letzte beiden Ziffern: ländliche Gebiete.

javascript
/^(?:0[1-9]|[1-4]\d|5[0-2])\d{3}$/
Italien

Erste Ziffer: Region. Zweite Ziffer: Provinz. Dritte Ziffer: Hauptstadt oder Provinz (ungerade für die Hauptstadt). Vierte Ziffer: Route. Fünfte Ziffer: Ort auf der Route (0 für kleine Orte).

javascript
/^\d{5}$/
Vereinigte Staaten

ZIP-Codes der Form „DDDDD“ oder „DDDDD-DDDD“. Alle Ziffern werden genutzt, keine davon hat eine besondere Bedeutung.

javascript
/^(?:GIR 0AA|(?:(?:(?:A[BL]|B[ABDHLNRSTX]?|C[ABFHMORTVW]|D[ADEGHLNTY]|E[HNX]?|F[KY]|G[LUY]?|H[ADGPRSUX]|I[GMPV]|JE|K[ATWY]|L[ADELNSU]?|M[EKL]?|N[EGNPRW]?|O[LX]|P[AEHLOR]|R[GHM]|S[AEGK-PRSTY]?|T[ADFNQRSW]|UB|W[ADFNRSV]|YO|ZE)[1-9]?\d|(?:(?:E|N|NW|SE|SW|W)1|EC[1-4]|WC[12])[A-HJKMNPR-Y]|(?:SW|W)(?:[2-9]|[1-9]\d)|EC[1-9]\d)\d[ABD-HJLNP-UW-Z]{2}))$/i

JavaScript-Version des regulären Ausdrucks für Postleitzahlen

Das gültige Format lautet „DDDDD“. Die Funktion nimmt die Postleitzahl als Parameter und gleicht sie mit dem regulären Ausdruck ab. Findet sie keine Übereinstimmung, schlägt die Prüfung fehl und die Funktion gibt false zurück, bei einer Übereinstimmung true.

JavaScript-Funktion mit regulärem Ausdruck für Postleitzahlen

javascript
/**
 * Eine Postleitzahl mit einem regulären Ausdruck validieren
 *
 * Wenn die Postleitzahl ungültig ist, false zurückgeben
 *
 * @param postcode
 * @return Boolean
 */
function validatePostcode(postcode){
    var Reg = new RegExp(/^(?:0[1-9]|[1-8]\d|9[0-8])\d{3}$/i);
    return Reg.test(postcode);
}

So benutzt du die JavaScript-Funktion

Am besten setzt du sie in einer IF-Anweisung ein, wie unten gezeigt.

javascript
if(validatePostcode(postcode)){
     alert("Code postal valide");
} else {
     alert("Code postal invalide");
}

See the Pen
Untitled
by Damien Flandrin (@dam62500)
on CodePen.

PHP-Version des regulären Ausdrucks für Postleitzahlen

Die Prüfung im Frontend genügt nicht: Dieselbe Kontrolle muss auf dem Server laufen. Hier ist ein PHP-Snippet, das Postleitzahlen serverseitig prüft.

PHP-Funktion mit regulärem Ausdruck für Postleitzahlen

php
/*
 * die Postleitzahl validieren
 * @param $postcode
 */
function isValidPostcode($postcode)
{
    return preg_match('/^(?:0[1-9]|[1-8]\d|9[0-8])\d{3}$/i', $postcode);
}

HTML-Version

In HTML kannst du Felder bauen, die über das Attribut pattern von <input> melden, ob der Wert gültig ist, dort trägst du den regulären Ausdruck einer Postleitzahl ein. Achtung: Das taugt nur dazu, dem Benutzer die Information optisch anzuzeigen, zum Beispiel mit roten Rändern.

html
<input
      name="postcode"
      type="text"
      pattern="(?:0[1-9]|[1-8]\d|9[0-8])\d{3}"
      placeholder="DDDDD"
     />

See the Pen
Postleitzahl mit einem regulären Ausdruck in HTML prüfen
by Damien Flandrin (@dam62500)
on CodePen.

HTMLJavaScriptPHP

Damien Flandrin Webentwickler seit 2010, Gründer von Gekkode und Email Impact. Jeder Artikel wird vor der Veröffentlichung an einem echten Projekt getestet. Kontakt
Newsletter

Neue Tests, Tutorials und Projekte, per E-Mail.

Reproduzierbare Tests, versionierter Code, datierte Ergebnisse. Niemals Spam.