4.15 Kanadische Postleitzahlen validieren

Problem

Sie wollen prüfen, ob ein String eine kanadische Postleitzahl enthält.

Lösung

^(?!.*[DFIOQU])[A-VXY][0-9][A-Z][0-9][A-Z][0-9]$
  • Regex-Optionen: Keine

  • Regex-Varianten: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby

Diskussion

Das negative Lookahead am Anfang dieses regulären Ausdrucks verhindert, dass sich irgendwo im Ausgangstext die Buchstaben D, F, I, O, Q oder U befinden. Die Zeichenklasse [A-VXY] verhindert darüber hinaus, dass W oder Z das erste Zeichen ist. Neben diesen beiden Ausnahmen werden für kanadische Postleitzahlen einfach abwechselnde Folgen von sechs alphanumerischen Zeichen genutzt, wobei in der Mitte ein Leerzeichen steht. So passt diese Regex zum Beispiel auf K1A 0B1. Dabei handelt ...

Get Reguläre Ausdrücke Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.