正規表現を使用して米国の郵便番号を検証する方法を教えてください。
以下の式を検証に使用しました
var us_postcode_regular = /^([0-9]{5})(?:[-\s]*([0-9]{4}))?$/;
ただし、すべての 00000 または 11111 または類似の番号を検証することはできません。
また、米国の郵便番号の一部ではない 5 桁のような間違った郵便番号を検証するにはどうすればよいですか。
正規表現を使用して米国の郵便番号を検証する方法を教えてください。
以下の式を検証に使用しました
var us_postcode_regular = /^([0-9]{5})(?:[-\s]*([0-9]{4}))?$/;
ただし、すべての 00000 または 11111 または類似の番号を検証することはできません。
また、米国の郵便番号の一部ではない 5 桁のような間違った郵便番号を検証するにはどうすればよいですか。
if(ctype_digit($zip) && strlen($zip) == 5){ echo 'US Zip Code'; }
http://www.zipcodeapi.com/API#zipToLocを使用すると、これが非常に簡単になります。呼び出しは次のようになります。
http://www.zipcodeapi.com/rest/<api_key>/info.<format>/<zip_code>/<units>
不正な郵便番号は、キャッチできるエラーをスローします。有効な郵便番号は、次のような JSON (または XML または CSV) 応答を返します。
{
"zip_code": "08057",
"lat": 56.595452,
"lng": -69.784543,
"city": "Classified",
"state": "NJ",
"timezone": {
"timezone_identifier": "America/New_York",
"timezone_abbr": "EDT",
"utc_offset_sec": -14400,
"is_dst": "T"
},
"acceptable_city_names": [
{
"city": "Classified",
"state": "NJ"
},
{
"city": "Classified",
"state": "NJ"
}
]
}