PostalCodePattern uses ConstantsTrait
Enumeration of postal code regular expressions by country.
Provides validation and pattern lookup for ISO 3166-1 alpha-2 country codes.
Example:
PostalCodePattern::isValid('75015', 'FR'); // true
PostalCodePattern::isValid('90210', 'US'); // true
PostalCodePattern::isValid('99999', 'CH'); // false
PostalCodePattern::getPattern('HK'); // null (no postal code system)
Countries without postal code systems (not defined in this class):
- HK (Hong Kong)
- MO (Macao)
- QA (Qatar)
- TD (Chad)
- UG (Uganda)
Note: For countries without postal codes, getPattern() returns null and isValid() returns false for any input.
Tags
Table of Contents
Constants
- AD : string = '/^AD[1-7]0{2}$/'
- Andorra postal code pattern (AD100-AD700).
- AR : string = '/^(?:\d{4}|[A-Z]\d{4}[A-Z]{3})$/'
- Argentina postal code pattern (4 or 8 characters).
- AT : string = '/^\d{4}$/'
- Austria postal code pattern (4 digits).
- AU : string = '/^\d{4}$/'
- Australia postal code pattern (4 digits).
- AZ : string = '/^AZ\d{4}$/'
- Azerbaijan postal code pattern (AZ 1000 - AZ 9999).
- BA : string = '/^\d{5}$/'
- Bosnia and Herzegovina postal code pattern (5 digits).
- BB : string = '/^BB\d{5}$/'
- Barbados postal code pattern (BB11000-BB99999).
- BD : string = '/^\d{4}$/'
- Bangladesh postal code pattern (4 digits).
- BE : string = '/^[1-9]\d{3}$/'
- Belgium postal code pattern (1000–9999).
- BG : string = '/^\d{4}$/'
- Bulgaria postal code pattern (4 digits).
- BH : string = '/^\d{3,4}$/'
- Bahrain postal code pattern (3 or 4 digits).
- BM : string = '/^[A-Z]{2}\s?(?:\d{2}|[A-Z]{2})$/'
- Bermuda postal code pattern (AA 00 or AA AA).
- BN : string = '/^[A-Z]{2}\d{4}$/'
- Brunei postal code pattern (AA1234).
- BR : string = '/^\d{5}-?\d{3}$/'
- Brazil postal code pattern (12345-678).
- BT : string = '/^\d{5}$/'
- Bhutan postal code pattern (5 digits).
- BY : string = '/^\d{6}$/'
- Belarus postal code pattern (6 digits).
- CA : string = '/^[ABCEGHJ-NPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][ ]?\d...
- Canada postal code pattern (A1A 1A1).
- CH : string = '/^[1-9]\d{3}$/'
- Switzerland postal code pattern (1000–9999).
- CL : string = '/^\d{7}$/'
- Chile postal code pattern (7 digits).
- CN : string = '/^\d{6}$/'
- China postal code pattern (6 digits).
- CO : string = '/^\d{6}$/'
- Colombia postal code pattern (6 digits).
- CR : string = '/^\d{5}$/'
- Costa Rica postal code pattern (5 digits).
- CU : string = '/^\d{5}$/'
- Cuba postal code pattern (5 digits).
- CV : string = '/^\d{4}$/'
- Cape Verde postal code pattern (4 digits).
- CY : string = '/^\d{4}$/'
- Cyprus postal code pattern (4 digits).
- CZ : string = '/^\d{3}\s?\d{2}$/'
- Czech Republic postal code pattern (123 45 or 12345).
- DE : string = '/^\d{5}$/'
- Germany postal code pattern (5 digits).
- DK : string = '/^\d{4}$/'
- Denmark postal code pattern (4 digits).
- DO : string = '/^\d{5}$/'
- Dominican Republic postal code pattern (5 digits).
- DZ : string = '/^\d{5}$/'
- Algeria postal code pattern (5 digits).
- EC : string = '/^\d{6}$/'
- Ecuador postal code pattern (6 digits).
- EE : string = '/^\d{5}$/'
- Estonia postal code pattern (5 digits).
- EG : string = '/^\d{5}$/'
- Egypt postal code pattern (5 digits).
- ES : string = '/^(?:0[1-9]|[1-4]\d|5[0-2])\d{3}$/'
- Spain postal code pattern (01000–52999).
- ET : string = '/^\d{4}$/'
- Ethiopia postal code pattern (4 digits).
- FI : string = '/^\d{5}$/'
- Finland postal code pattern (5 digits).
- FO : string = '/^FO-?\d{3}$/'
- Faroe Islands postal code pattern (FO-100 to FO-970).
- FR : string = '/^(?:0[1-9]|[1-8]\d|9[0-8])\d{3}$/'
- France postal code pattern (01000–98999).
- GB : string = '/^(?:GIR 0AA|(?:(?:(?:A[BL]|B[ABDHLNRSTX]?|C[A...
- Great Britain postal code pattern (complex UK postcode).
- GE : string = '/^\d{4}$/'
- Georgia postal code pattern (4 digits).
- GF : string = '/^973\d{2}$/'
- French Guiana postal code pattern (973xx).
- GG : string = '/^GY\d{1,2}\s?\d[A-Z]{2}$/i'
- Guernsey postal code pattern (GY1-GY10).
- GI : string = '/^GX11\s?1AA$/i'
- Gibraltar postal code pattern (GX11 1AA).
- GL : string = '/^\d{4}$/'
- Greenland postal code pattern (4 digits).
- GP : string = '/^971\d{2}$/'
- Guadeloupe postal code pattern (971xx).
- GR : string = '/^\d{3}\s?\d{2}$/'
- Greece postal code pattern (123 45 or 12345).
- GT : string = '/^\d{5}$/'
- Guatemala postal code pattern (5 digits).
- GU : string = '/^969\d{2}(?:-\d{4})?$/'
- Guam postal code pattern (US ZIP format).
- HN : string = '/^\d{5}$/'
- Honduras postal code pattern (5 digits).
- HR : string = '/^[1-5]\d{4}$/'
- Croatia postal code pattern (5 digits, 10000-53000).
- HT : string = '/^\d{4}$/'
- Haiti postal code pattern (4 digits).
- HU : string = '/^\d{4}$/'
- Hungary postal code pattern (4 digits).
- ID : string = '/^\d{5}$/'
- Indonesia postal code pattern (5 digits).
- IE : string = '/^[AC-FHKNPRTV-Y]\d{2}\s?[0-9AC-FHKNPRTV-Y]{4}...
- Ireland postal code pattern (Eircode: A65 F4E2).
- IL : string = '/^\d{5}(?:\d{2})?$/'
- Israel postal code pattern (5 or 7 digits).
- IM : string = '/^IM\d{1,2}\s?\d[A-Z]{2}$/i'
- Isle of Man postal code pattern (IM1-IM9).
- IN : string = '/^\d{6}$/'
- India postal code pattern (6 digits).
- IQ : string = '/^\d{5}$/'
- Iraq postal code pattern (5 digits).
- IR : string = '/^\d{5}-?\d{5}$/'
- Iran postal code pattern (10 digits, ####-#####).
- IS : string = '/^\d{3}$/'
- Iceland postal code pattern (3 digits).
- IT : string = '/^\d{5}$/'
- Italy postal code pattern (5 digits).
- JE : string = '/^JE\d{1}\s?\d[A-Z]{2}$/i'
- Jersey postal code pattern (JE1-JE5).
- JM : string = '/^\d{2}$/'
- Jamaica postal code pattern (2 digits).
- JO : string = '/^\d{5}$/'
- Jordan postal code pattern (5 digits).
- JP : string = '/^\d{3}-?\d{4}$/'
- Japan postal code pattern (123-4567).
- KE : string = '/^\d{5}$/'
- Kenya postal code pattern (5 digits).
- KG : string = '/^\d{6}$/'
- Kyrgyzstan postal code pattern (6 digits).
- KH : string = '/^\d{5}$/'
- Cambodia postal code pattern (5 digits).
- KR : string = '/^\d{5}$/'
- South Korea postal code pattern (5 digits).
- KW : string = '/^\d{5}$/'
- Kuwait postal code pattern (5 digits).
- KY : string = '/^KY\d-\d{4}$/'
- Cayman Islands postal code pattern (KY1-1234).
- KZ : string = '/^\d{6}$/'
- Kazakhstan postal code pattern (6 digits).
- LA : string = '/^\d{5}$/'
- Laos postal code pattern (5 digits).
- LB : string = '/^\d{4}(?:\s?\d{4})?$/'
- Lebanon postal code pattern (4 or 8 digits).
- LI : string = '/^948[5-9]|949[0-8]$/'
- Liechtenstein postal code pattern (4 digits, 9485-9498).
- LK : string = '/^\d{5}$/'
- Sri Lanka postal code pattern (5 digits).
- LR : string = '/^\d{4}$/'
- Liberia postal code pattern (4 digits).
- LS : string = '/^\d{3}$/'
- Lesotho postal code pattern (3 digits).
- LT : string = '/^LT-?\d{5}$/'
- Lithuania postal code pattern (LT-12345).
- LU : string = '/^\d{4}$/'
- Luxembourg postal code pattern (4 digits).
- LV : string = '/^LV-?\d{4}$/'
- Latvia postal code pattern (LV-1234).
- LY : string = '/^\d{5}$/'
- Libya postal code pattern (5 digits).
- MA : string = '/^\d{5}$/'
- Morocco postal code pattern (5 digits).
- MC : string = '/^980\d{2}$/'
- Monaco postal code pattern (980xx).
- MD : string = '/^(?:MD-?)?\d{4}$/'
- Moldova postal code pattern (MD-1234 or 1234).
- ME : string = '/^\d{5}$/'
- Montenegro postal code pattern (5 digits).
- MG : string = '/^\d{3}$/'
- Madagascar postal code pattern (3 digits).
- MH : string = '/^969[6-7]\d$/'
- Marshall Islands postal code pattern (96960-96970).
- MK : string = '/^\d{4}$/'
- North Macedonia postal code pattern (4 digits).
- MM : string = '/^\d{5}$/'
- Myanmar postal code pattern (5 digits).
- MN : string = '/^\d{5,6}$/'
- Mongolia postal code pattern (5 or 6 digits).
- MQ : string = '/^972\d{2}$/'
- Martinique postal code pattern (972xx).
- MT : string = '/^[A-Z]{3}\s?\d{4}$/i'
- Malta postal code pattern (AAA 1234).
- MU : string = '/^[A-Z]?\d{4}$/i'
- Mauritius postal code pattern (5 digits, A1234).
- MV : string = '/^\d{5}$/'
- Maldives postal code pattern (5 digits).
- MX : string = '/^\d{5}$/'
- Mexico postal code pattern (5 digits).
- MY : string = '/^\d{5}$/'
- Malaysia postal code pattern (5 digits).
- MZ : string = '/^\d{4}$/'
- Mozambique postal code pattern (4 digits).
- NA : string = '/^\d{5}$/'
- Namibia postal code pattern (5 digits).
- NC : string = '/^988\d{2}$/'
- New Caledonia postal code pattern (988xx).
- NE : string = '/^\d{4}$/'
- Niger postal code pattern (4 digits).
- NG : string = '/^\d{6}$/'
- Nigeria postal code pattern (6 digits).
- NI : string = '/^\d{5}$/'
- Nicaragua postal code pattern (5 digits).
- NL : string = '/^\d{4}\s?[A-Z]{2}$/i'
- Netherlands postal code pattern (1234 AB).
- NO : string = '/^\d{4}$/'
- Norway postal code pattern (4 digits).
- NP : string = '/^\d{5}$/'
- Nepal postal code pattern (5 digits).
- NZ : string = '/^\d{4}$/'
- New Zealand postal code pattern (4 digits).
- OM : string = '/^\d{3}$/'
- Oman postal code pattern (3 digits).
- PA : string = '/^\d{4}$/'
- Panama postal code pattern (4 digits).
- PE : string = '/^\d{5}$/'
- Peru postal code pattern (5 digits).
- PF : string = '/^987\d{2}$/'
- French Polynesia postal code pattern (987xx).
- PG : string = '/^\d{3}$/'
- Papua New Guinea postal code pattern (3 digits).
- PH : string = '/^\d{4}$/'
- Philippines postal code pattern (4 digits).
- PK : string = '/^\d{5}$/'
- Pakistan postal code pattern (5 digits).
- PL : string = '/^\d{2}-\d{3}$/'
- Poland postal code pattern (12-345).
- PM : string = '/^97500$/'
- Saint Pierre and Miquelon postal code pattern (97500).
- PR : string = '/^00[679]\d{2}(?:-\d{4})?$/'
- Puerto Rico postal code pattern (US ZIP format).
- PS : string = '/^\d{3}$/'
- Palestine postal code pattern (3 digits).
- PT : string = '/^\d{4}-\d{3}$/'
- Portugal postal code pattern (1234-567).
- PW : string = '/^96940$/'
- Palau postal code pattern (96940).
- PY : string = '/^\d{4}$/'
- Paraguay postal code pattern (4 digits).
- RE : string = '/^974\d{2}$/'
- Réunion postal code pattern (974xx).
- RO : string = '/^\d{6}$/'
- Romania postal code pattern (6 digits).
- RS : string = '/^\d{5}$/'
- Serbia postal code pattern (5 digits).
- RU : string = '/^\d{6}$/'
- Russia postal code pattern (6 digits).
- SA : string = '/^\d{5}$/'
- Saudi Arabia postal code pattern (5 digits).
- SE : string = '/^\d{3}\s?\d{2}$/'
- Sweden postal code pattern (123 45).
- SG : string = '/^\d{6}$/'
- Singapore postal code pattern (6 digits).
- SI : string = '/^\d{4}$/'
- Slovenia postal code pattern (4 digits).
- SJ : string = '/^917[0-9]$/'
- Svalbard postal code pattern (9170-9179).
- SK : string = '/^\d{3}\s?\d{2}$/'
- Slovakia postal code pattern (123 45).
- SM : string = '/^4789\d$/'
- San Marino postal code pattern (4789x).
- SN : string = '/^\d{5}$/'
- Senegal postal code pattern (5 digits).
- SO : string = '/^\d{5}$/'
- Somalia postal code pattern (5 digits).
- SS : string = '/^\d{5}$/'
- South Sudan postal code pattern (5 digits).
- SV : string = '/^\d{4}$/'
- El Salvador postal code pattern (4 digits).
- SZ : string = '/^[A-Z]\d{3}$/i'
- Eswatini postal code pattern (A100-H300).
- TC : string = '/^TKCA\s?1ZZ$/i'
- Turks and Caicos Islands postal code pattern (TKCA 1ZZ).
- TH : string = '/^\d{5}$/'
- Thailand postal code pattern (5 digits).
- TJ : string = '/^\d{6}$/'
- Tajikistan postal code pattern (6 digits).
- TM : string = '/^\d{6}$/'
- Turkmenistan postal code pattern (6 digits).
- TN : string = '/^\d{4}$/'
- Tunisia postal code pattern (4 digits).
- TR : string = '/^\d{5}$/'
- Turkey postal code pattern (5 digits).
- TT : string = '/^\d{6}$/'
- Trinidad and Tobago postal code pattern (6 digits).
- TW : string = '/^\d{3}(?:\d{2})?$/'
- Taiwan postal code pattern (3 or 5 digits).
- TZ : string = '/^\d{5}$/'
- Tanzania postal code pattern (5 digits).
- UA : string = '/^\d{5}$/'
- Ukraine postal code pattern (5 digits).
- US : string = '/^\d{5}(?:-\d{4})?$/'
- United States postal code pattern (5 or 9 digits).
- UY : string = '/^\d{5}$/'
- Uruguay postal code pattern (5 digits).
- UZ : string = '/^\d{6}$/'
- Uzbekistan postal code pattern (6 digits).
- VA : string = '/^00120$/'
- Vatican City postal code pattern (00120).
- VE : string = '/^\d{4}$/'
- Venezuela postal code pattern (4 digits).
- VI : string = '/^008\d{2}(?:-\d{4})?$/'
- Virgin Islands (US) postal code pattern (008xx).
- VN : string = '/^\d{6}$/'
- Vietnam postal code pattern (6 digits).
- WF : string = '/^98600$/'
- Wallis and Futuna postal code pattern (98600).
- YT : string = '/^976\d{2}$/'
- Mayotte postal code pattern (976xx).
- ZA : string = '/^\d{4}$/'
- South Africa postal code pattern (4 digits).
- ZM : string = '/^\d{5}$/'
- Zambia postal code pattern (5 digits).
Methods
- assert() : void
- Throws an exception if the postal code is invalid for the country.
- getPattern() : string|null
- Returns the regex pattern for the given country code, or null if unknown.
- isValid() : bool
- Returns true if a postal code is valid for a given ISO country code.
Constants
AD
Andorra postal code pattern (AD100-AD700).
public
string
AD
= '/^AD[1-7]0{2}$/'
AR
Argentina postal code pattern (4 or 8 characters).
public
string
AR
= '/^(?:\d{4}|[A-Z]\d{4}[A-Z]{3})$/'
AT
Austria postal code pattern (4 digits).
public
string
AT
= '/^\d{4}$/'
AU
Australia postal code pattern (4 digits).
public
string
AU
= '/^\d{4}$/'
AZ
Azerbaijan postal code pattern (AZ 1000 - AZ 9999).
public
string
AZ
= '/^AZ\d{4}$/'
BA
Bosnia and Herzegovina postal code pattern (5 digits).
public
string
BA
= '/^\d{5}$/'
BB
Barbados postal code pattern (BB11000-BB99999).
public
string
BB
= '/^BB\d{5}$/'
BD
Bangladesh postal code pattern (4 digits).
public
string
BD
= '/^\d{4}$/'
BE
Belgium postal code pattern (1000–9999).
public
string
BE
= '/^[1-9]\d{3}$/'
BG
Bulgaria postal code pattern (4 digits).
public
string
BG
= '/^\d{4}$/'
BH
Bahrain postal code pattern (3 or 4 digits).
public
string
BH
= '/^\d{3,4}$/'
BM
Bermuda postal code pattern (AA 00 or AA AA).
public
string
BM
= '/^[A-Z]{2}\s?(?:\d{2}|[A-Z]{2})$/'
BN
Brunei postal code pattern (AA1234).
public
string
BN
= '/^[A-Z]{2}\d{4}$/'
BR
Brazil postal code pattern (12345-678).
public
string
BR
= '/^\d{5}-?\d{3}$/'
BT
Bhutan postal code pattern (5 digits).
public
string
BT
= '/^\d{5}$/'
BY
Belarus postal code pattern (6 digits).
public
string
BY
= '/^\d{6}$/'
CA
Canada postal code pattern (A1A 1A1).
public
string
CA
= '/^[ABCEGHJ-NPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][ ]?\d[ABCEGHJ-NPRSTV-Z]\d$/i'
CH
Switzerland postal code pattern (1000–9999).
public
string
CH
= '/^[1-9]\d{3}$/'
CL
Chile postal code pattern (7 digits).
public
string
CL
= '/^\d{7}$/'
CN
China postal code pattern (6 digits).
public
string
CN
= '/^\d{6}$/'
CO
Colombia postal code pattern (6 digits).
public
string
CO
= '/^\d{6}$/'
CR
Costa Rica postal code pattern (5 digits).
public
string
CR
= '/^\d{5}$/'
CU
Cuba postal code pattern (5 digits).
public
string
CU
= '/^\d{5}$/'
CV
Cape Verde postal code pattern (4 digits).
public
string
CV
= '/^\d{4}$/'
CY
Cyprus postal code pattern (4 digits).
public
string
CY
= '/^\d{4}$/'
CZ
Czech Republic postal code pattern (123 45 or 12345).
public
string
CZ
= '/^\d{3}\s?\d{2}$/'
DE
Germany postal code pattern (5 digits).
public
string
DE
= '/^\d{5}$/'
DK
Denmark postal code pattern (4 digits).
public
string
DK
= '/^\d{4}$/'
DO
Dominican Republic postal code pattern (5 digits).
public
string
DO
= '/^\d{5}$/'
DZ
Algeria postal code pattern (5 digits).
public
string
DZ
= '/^\d{5}$/'
EC
Ecuador postal code pattern (6 digits).
public
string
EC
= '/^\d{6}$/'
EE
Estonia postal code pattern (5 digits).
public
string
EE
= '/^\d{5}$/'
EG
Egypt postal code pattern (5 digits).
public
string
EG
= '/^\d{5}$/'
ES
Spain postal code pattern (01000–52999).
public
string
ES
= '/^(?:0[1-9]|[1-4]\d|5[0-2])\d{3}$/'
ET
Ethiopia postal code pattern (4 digits).
public
string
ET
= '/^\d{4}$/'
FI
Finland postal code pattern (5 digits).
public
string
FI
= '/^\d{5}$/'
FO
Faroe Islands postal code pattern (FO-100 to FO-970).
public
string
FO
= '/^FO-?\d{3}$/'
FR
France postal code pattern (01000–98999).
public
string
FR
= '/^(?:0[1-9]|[1-8]\d|9[0-8])\d{3}$/'
GB
Great Britain postal code pattern (complex UK postcode).
public
string
GB
= '/^(?: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'
GE
Georgia postal code pattern (4 digits).
public
string
GE
= '/^\d{4}$/'
GF
French Guiana postal code pattern (973xx).
public
string
GF
= '/^973\d{2}$/'
GG
Guernsey postal code pattern (GY1-GY10).
public
string
GG
= '/^GY\d{1,2}\s?\d[A-Z]{2}$/i'
GI
Gibraltar postal code pattern (GX11 1AA).
public
string
GI
= '/^GX11\s?1AA$/i'
GL
Greenland postal code pattern (4 digits).
public
string
GL
= '/^\d{4}$/'
GP
Guadeloupe postal code pattern (971xx).
public
string
GP
= '/^971\d{2}$/'
GR
Greece postal code pattern (123 45 or 12345).
public
string
GR
= '/^\d{3}\s?\d{2}$/'
GT
Guatemala postal code pattern (5 digits).
public
string
GT
= '/^\d{5}$/'
GU
Guam postal code pattern (US ZIP format).
public
string
GU
= '/^969\d{2}(?:-\d{4})?$/'
HN
Honduras postal code pattern (5 digits).
public
string
HN
= '/^\d{5}$/'
HR
Croatia postal code pattern (5 digits, 10000-53000).
public
string
HR
= '/^[1-5]\d{4}$/'
HT
Haiti postal code pattern (4 digits).
public
string
HT
= '/^\d{4}$/'
HU
Hungary postal code pattern (4 digits).
public
string
HU
= '/^\d{4}$/'
ID
Indonesia postal code pattern (5 digits).
public
string
ID
= '/^\d{5}$/'
IE
Ireland postal code pattern (Eircode: A65 F4E2).
public
string
IE
= '/^[AC-FHKNPRTV-Y]\d{2}\s?[0-9AC-FHKNPRTV-Y]{4}$/i'
IL
Israel postal code pattern (5 or 7 digits).
public
string
IL
= '/^\d{5}(?:\d{2})?$/'
IM
Isle of Man postal code pattern (IM1-IM9).
public
string
IM
= '/^IM\d{1,2}\s?\d[A-Z]{2}$/i'
IN
India postal code pattern (6 digits).
public
string
IN
= '/^\d{6}$/'
IQ
Iraq postal code pattern (5 digits).
public
string
IQ
= '/^\d{5}$/'
IR
Iran postal code pattern (10 digits, ####-#####).
public
string
IR
= '/^\d{5}-?\d{5}$/'
IS
Iceland postal code pattern (3 digits).
public
string
IS
= '/^\d{3}$/'
IT
Italy postal code pattern (5 digits).
public
string
IT
= '/^\d{5}$/'
JE
Jersey postal code pattern (JE1-JE5).
public
string
JE
= '/^JE\d{1}\s?\d[A-Z]{2}$/i'
JM
Jamaica postal code pattern (2 digits).
public
string
JM
= '/^\d{2}$/'
JO
Jordan postal code pattern (5 digits).
public
string
JO
= '/^\d{5}$/'
JP
Japan postal code pattern (123-4567).
public
string
JP
= '/^\d{3}-?\d{4}$/'
KE
Kenya postal code pattern (5 digits).
public
string
KE
= '/^\d{5}$/'
KG
Kyrgyzstan postal code pattern (6 digits).
public
string
KG
= '/^\d{6}$/'
KH
Cambodia postal code pattern (5 digits).
public
string
KH
= '/^\d{5}$/'
KR
South Korea postal code pattern (5 digits).
public
string
KR
= '/^\d{5}$/'
KW
Kuwait postal code pattern (5 digits).
public
string
KW
= '/^\d{5}$/'
KY
Cayman Islands postal code pattern (KY1-1234).
public
string
KY
= '/^KY\d-\d{4}$/'
KZ
Kazakhstan postal code pattern (6 digits).
public
string
KZ
= '/^\d{6}$/'
LA
Laos postal code pattern (5 digits).
public
string
LA
= '/^\d{5}$/'
LB
Lebanon postal code pattern (4 or 8 digits).
public
string
LB
= '/^\d{4}(?:\s?\d{4})?$/'
LI
Liechtenstein postal code pattern (4 digits, 9485-9498).
public
string
LI
= '/^948[5-9]|949[0-8]$/'
LK
Sri Lanka postal code pattern (5 digits).
public
string
LK
= '/^\d{5}$/'
LR
Liberia postal code pattern (4 digits).
public
string
LR
= '/^\d{4}$/'
LS
Lesotho postal code pattern (3 digits).
public
string
LS
= '/^\d{3}$/'
LT
Lithuania postal code pattern (LT-12345).
public
string
LT
= '/^LT-?\d{5}$/'
LU
Luxembourg postal code pattern (4 digits).
public
string
LU
= '/^\d{4}$/'
LV
Latvia postal code pattern (LV-1234).
public
string
LV
= '/^LV-?\d{4}$/'
LY
Libya postal code pattern (5 digits).
public
string
LY
= '/^\d{5}$/'
MA
Morocco postal code pattern (5 digits).
public
string
MA
= '/^\d{5}$/'
MC
Monaco postal code pattern (980xx).
public
string
MC
= '/^980\d{2}$/'
MD
Moldova postal code pattern (MD-1234 or 1234).
public
string
MD
= '/^(?:MD-?)?\d{4}$/'
ME
Montenegro postal code pattern (5 digits).
public
string
ME
= '/^\d{5}$/'
MG
Madagascar postal code pattern (3 digits).
public
string
MG
= '/^\d{3}$/'
MH
Marshall Islands postal code pattern (96960-96970).
public
string
MH
= '/^969[6-7]\d$/'
MK
North Macedonia postal code pattern (4 digits).
public
string
MK
= '/^\d{4}$/'
MM
Myanmar postal code pattern (5 digits).
public
string
MM
= '/^\d{5}$/'
MN
Mongolia postal code pattern (5 or 6 digits).
public
string
MN
= '/^\d{5,6}$/'
MQ
Martinique postal code pattern (972xx).
public
string
MQ
= '/^972\d{2}$/'
MT
Malta postal code pattern (AAA 1234).
public
string
MT
= '/^[A-Z]{3}\s?\d{4}$/i'
MU
Mauritius postal code pattern (5 digits, A1234).
public
string
MU
= '/^[A-Z]?\d{4}$/i'
MV
Maldives postal code pattern (5 digits).
public
string
MV
= '/^\d{5}$/'
MX
Mexico postal code pattern (5 digits).
public
string
MX
= '/^\d{5}$/'
MY
Malaysia postal code pattern (5 digits).
public
string
MY
= '/^\d{5}$/'
MZ
Mozambique postal code pattern (4 digits).
public
string
MZ
= '/^\d{4}$/'
NA
Namibia postal code pattern (5 digits).
public
string
NA
= '/^\d{5}$/'
NC
New Caledonia postal code pattern (988xx).
public
string
NC
= '/^988\d{2}$/'
NE
Niger postal code pattern (4 digits).
public
string
NE
= '/^\d{4}$/'
NG
Nigeria postal code pattern (6 digits).
public
string
NG
= '/^\d{6}$/'
NI
Nicaragua postal code pattern (5 digits).
public
string
NI
= '/^\d{5}$/'
NL
Netherlands postal code pattern (1234 AB).
public
string
NL
= '/^\d{4}\s?[A-Z]{2}$/i'
NO
Norway postal code pattern (4 digits).
public
string
NO
= '/^\d{4}$/'
NP
Nepal postal code pattern (5 digits).
public
string
NP
= '/^\d{5}$/'
NZ
New Zealand postal code pattern (4 digits).
public
string
NZ
= '/^\d{4}$/'
OM
Oman postal code pattern (3 digits).
public
string
OM
= '/^\d{3}$/'
PA
Panama postal code pattern (4 digits).
public
string
PA
= '/^\d{4}$/'
PE
Peru postal code pattern (5 digits).
public
string
PE
= '/^\d{5}$/'
PF
French Polynesia postal code pattern (987xx).
public
string
PF
= '/^987\d{2}$/'
PG
Papua New Guinea postal code pattern (3 digits).
public
string
PG
= '/^\d{3}$/'
PH
Philippines postal code pattern (4 digits).
public
string
PH
= '/^\d{4}$/'
PK
Pakistan postal code pattern (5 digits).
public
string
PK
= '/^\d{5}$/'
PL
Poland postal code pattern (12-345).
public
string
PL
= '/^\d{2}-\d{3}$/'
PM
Saint Pierre and Miquelon postal code pattern (97500).
public
string
PM
= '/^97500$/'
PR
Puerto Rico postal code pattern (US ZIP format).
public
string
PR
= '/^00[679]\d{2}(?:-\d{4})?$/'
PS
Palestine postal code pattern (3 digits).
public
string
PS
= '/^\d{3}$/'
PT
Portugal postal code pattern (1234-567).
public
string
PT
= '/^\d{4}-\d{3}$/'
PW
Palau postal code pattern (96940).
public
string
PW
= '/^96940$/'
PY
Paraguay postal code pattern (4 digits).
public
string
PY
= '/^\d{4}$/'
RE
Réunion postal code pattern (974xx).
public
string
RE
= '/^974\d{2}$/'
RO
Romania postal code pattern (6 digits).
public
string
RO
= '/^\d{6}$/'
RS
Serbia postal code pattern (5 digits).
public
string
RS
= '/^\d{5}$/'
RU
Russia postal code pattern (6 digits).
public
string
RU
= '/^\d{6}$/'
SA
Saudi Arabia postal code pattern (5 digits).
public
string
SA
= '/^\d{5}$/'
SE
Sweden postal code pattern (123 45).
public
string
SE
= '/^\d{3}\s?\d{2}$/'
SG
Singapore postal code pattern (6 digits).
public
string
SG
= '/^\d{6}$/'
SI
Slovenia postal code pattern (4 digits).
public
string
SI
= '/^\d{4}$/'
SJ
Svalbard postal code pattern (9170-9179).
public
string
SJ
= '/^917[0-9]$/'
SK
Slovakia postal code pattern (123 45).
public
string
SK
= '/^\d{3}\s?\d{2}$/'
SM
San Marino postal code pattern (4789x).
public
string
SM
= '/^4789\d$/'
SN
Senegal postal code pattern (5 digits).
public
string
SN
= '/^\d{5}$/'
SO
Somalia postal code pattern (5 digits).
public
string
SO
= '/^\d{5}$/'
SS
South Sudan postal code pattern (5 digits).
public
string
SS
= '/^\d{5}$/'
SV
El Salvador postal code pattern (4 digits).
public
string
SV
= '/^\d{4}$/'
SZ
Eswatini postal code pattern (A100-H300).
public
string
SZ
= '/^[A-Z]\d{3}$/i'
TC
Turks and Caicos Islands postal code pattern (TKCA 1ZZ).
public
string
TC
= '/^TKCA\s?1ZZ$/i'
TH
Thailand postal code pattern (5 digits).
public
string
TH
= '/^\d{5}$/'
TJ
Tajikistan postal code pattern (6 digits).
public
string
TJ
= '/^\d{6}$/'
TM
Turkmenistan postal code pattern (6 digits).
public
string
TM
= '/^\d{6}$/'
TN
Tunisia postal code pattern (4 digits).
public
string
TN
= '/^\d{4}$/'
TR
Turkey postal code pattern (5 digits).
public
string
TR
= '/^\d{5}$/'
TT
Trinidad and Tobago postal code pattern (6 digits).
public
string
TT
= '/^\d{6}$/'
TW
Taiwan postal code pattern (3 or 5 digits).
public
string
TW
= '/^\d{3}(?:\d{2})?$/'
TZ
Tanzania postal code pattern (5 digits).
public
string
TZ
= '/^\d{5}$/'
UA
Ukraine postal code pattern (5 digits).
public
string
UA
= '/^\d{5}$/'
US
United States postal code pattern (5 or 9 digits).
public
string
US
= '/^\d{5}(?:-\d{4})?$/'
UY
Uruguay postal code pattern (5 digits).
public
string
UY
= '/^\d{5}$/'
UZ
Uzbekistan postal code pattern (6 digits).
public
string
UZ
= '/^\d{6}$/'
VA
Vatican City postal code pattern (00120).
public
string
VA
= '/^00120$/'
VE
Venezuela postal code pattern (4 digits).
public
string
VE
= '/^\d{4}$/'
VI
Virgin Islands (US) postal code pattern (008xx).
public
string
VI
= '/^008\d{2}(?:-\d{4})?$/'
VN
Vietnam postal code pattern (6 digits).
public
string
VN
= '/^\d{6}$/'
WF
Wallis and Futuna postal code pattern (98600).
public
string
WF
= '/^98600$/'
YT
Mayotte postal code pattern (976xx).
public
string
YT
= '/^976\d{2}$/'
ZA
South Africa postal code pattern (4 digits).
public
string
ZA
= '/^\d{4}$/'
ZM
Zambia postal code pattern (5 digits).
public
string
ZM
= '/^\d{5}$/'
Methods
assert()
Throws an exception if the postal code is invalid for the country.
public
static assert(string $code, string $country) : void
Parameters
- $code : string
- $country : string
Tags
getPattern()
Returns the regex pattern for the given country code, or null if unknown.
public
static getPattern(string $country) : string|null
Parameters
- $country : string
-
ISO 3166-1 alpha-2 code (case-insensitive)
Return values
string|nullisValid()
Returns true if a postal code is valid for a given ISO country code.
public
static isValid(string $code, string $country) : bool
Parameters
- $code : string
-
The postal code to check.
- $country : string
-
ISO 3166-1 alpha-2 code (e.g. "FR", "US").