【发布时间】:2014-08-16 16:58:35
【问题描述】:
我的应用程序的用户被要求提供他们的国家和邮政编码。我想使用邮政编码作为数据存储中的键。因为邮政编码是由用户输入的,所以它们可以以不同的形式输入。例如,加拿大用户可能输入了:
- A1A 1A1
- a1a 1a1
- A1A1A1
- a1A 1A1
- 等等……
现在我可以为加拿大邮政编码创建一个规范化函数,该函数选择一种规范形式(例如,全大写不带空格)并将邮政编码转换为规范形式,然后将其保存为 DB 键。
但是,这仅涵盖加拿大。我不想重新发明轮子。是否有一个库或 API 可以标准化(并可能验证)所有(或许多)国家/地区的邮政编码?
谢谢!
【问题讨论】:
-
为什么不让它变得更容易呢?与其处理所有输入的品种代码,不如要求用户仅以标准格式输入(实际上这是正常做法)并检查一种简单格式输入的内容。实现对所有国家/地区的标准代码表示的支持更容易,我相信您可以手动完成,而无需大而棘手的库。用户在被询问/解释时可以正确输入。
-
@RuslanGerasimov,好的,这是一个有效的观点,在这种情况下,是否有一个地方可以让我获得所有国家/地区的标准格式列表?
-
也检查这个线程,他们假装用正则表达式和其他东西覆盖加拿大和其他世界的代码http://stackoverflow.com/questions/578406/what-is-the-ultimate-postal-code-and-zip-regex
-
ISO 3166-1、ISO 3166-1 alpha-2 等。有一个组织称为万国邮政联盟http://www.upu.int
-
我将在 Node 中为此构建一个库