是否有用于规范邮政编码的库?

时间:2014-06-25 23:47:16

标签: normalization postal-code

我的应用程序的用户被要求提供他们的国家和邮政编码。我想将邮政编码用作数据存储中的密钥。由于邮政编码是由用户输入的,因此可以以不同的形式输入。例如,加拿大用户可能已输入:

  • A1A 1A1
  • a1a 1a1
  • A1A1A1
  • a1A 1A1
  • 等...

现在我可以为选择一种规范形式的加拿大邮政编码制作一个规范化函数(例如,所有大写都没有空格),并将邮政编码转换为规范形式,然后再将其保存为数据库密钥。

但是,这只涵盖加拿大。我不想重新发明轮子。是否有可以为所有(或许多)国家/地区标准化(并可能验证)邮政编码的库或API?

谢谢!

2 个答案:

答案 0 :(得分:2)

使用您的语言内置的正则表达式和字符串函数非常容易。

Geonames中的CountryInfo表包含邮政编码正则表达式和所有带邮政编码的国家/地区的格式值:

http://download.geonames.org/export/dump/countryInfo.txt

别忘了H0H 0H0是圣诞老人的有效邮政编码。

答案 1 :(得分:2)

使用邮政编码要记住的重要事项是,并非所有国家/地区都有,并且随着地址的添加,更新或删除,邮政编码可以重新编码。

考虑到这一点,如果您想确保您捕获的数据准确无误,最好的解决方案是通常使用付费的第三方库或Web服务来验证这一点。有许多公司提供服务来验证整个地址,而不仅仅是邮政编码。根据您的需要,这些因全球覆盖范围和成本而异。

我为company工作,通过一致的界面提供address validation for most countries world wide,无论是网络服务还是可以集成的API。

您可以在此处试用一些示例:http://www.qas.co.uk/knowledge-centre/product-information/address-postcode-finder.htm

相关问题