我以为人们会一起处理小代码项目,但是我没有看到它们,所以这里很简单:
验证有效美国邮政编码的代码.我知道那里有邮政编码数据库,但仍有一些用途,如网页,快速验证,以及邮政编码不断发布的事实,因此您可能希望使用弱验证.
我在维基/博客的侧面项目中写了一些关于邮政编码的文章:
https://benc.fogbugz.com/default.asp?W24
还有一种新的,奇怪的邮政编码类型.
https://benc.fogbugz.com/default.asp?W42
我可以使用javascript代码,但看看我们可以在这里获得多少种语言会很有趣.
Javascript Regex Literal:
美国邮政编码: /(^\d{5}$)|(^\d{5}-\d{4}$)/
var isValidZip = /(^\d{5}$)|(^\d{5}-\d{4}$)/.test("90210");
一些国家使用邮政编码,这种模式将失败.
function isValidUSZip(sZip) { return /^\d{5}(-\d{4})?$/.test(sZip); }
这是一个JavaScript函数,可根据国家/地区代码验证ZIP /邮政编码.它允许有点自由格式化.您也可以为其他国家/地区添加案例.请注意,默认情况允许空邮政编码,因为并非所有国家/地区都使用它们.
function isValidPostalCode(postalCode, countryCode) { switch (countryCode) { case "US": postalCodeRegex = /^([0-9]{5})(?:[-\s]*([0-9]{4}))?$/; break; case "CA": postalCodeRegex = /^([A-Z][0-9][A-Z])\s*([0-9][A-Z][0-9])$/; break; default: postalCodeRegex = /^(?:[A-Z0-9]+([- ]?[A-Z0-9]+)*)?$/; } return postalCodeRegex.test(postalCode); }
仅供参考虚荣邮政编码的第二个链接似乎是愚人节的笑话.
如果你在为加拿大做,请记住并非所有的信件都有效
这些字母无效:D,F,I,O,Q或U字母W和Z不用作第一个字母.还有一些人在第三个字符后使用可选空格.
这是加拿大邮政编码的正则表达式:
new RegExp(/^[abceghjklmnprstvxy][0-9][abceghjklmnprstvwxyz]\s?[0-9][abceghjklmnprstvwxyz][0-9]$/i)
最后我使其不区分大小写.