我目前正在为一家电气公司开发一个网站。他们想在那里查一下邮政编码。它会以某种方式工作:
- 用户输入邮政编码
- 看看我们是否能覆盖它
- 显示结果
但我以前从未使用过邮政编码。我该如何检查他们是否覆盖。我显然需要一些数据库,列出他们覆盖的邮政编码或地区。但是我该如何检查邮政编码是否有效呢。
邮政编码查找显然是为了查看电气公司是否覆盖了用户的区域。
提前谢谢。
我认为与其使用数据库来搜索结果,不如查看地理位置,并使用第三方为您计算所有内容。
谷歌和索尼都提供地理定位平台
- 索尼拥有:http://www.placeengine.com/en
- 谷歌拥有:http://code.google.com/apis/maps/documentation/distancematrix/
我显然需要一些数据库,列出他们覆盖的邮政编码或地区。
是的。然后做一个简单的查找。
但是我该如何检查邮政编码是否有效呢。
你必须有一个数据库列出所有可能的邮政编码,并进行类似的检查。
我不知道你在哪个国家,但在大多数国家,没有程序化的方法来确定邮政编码是否包含在服务中
此外,如果不咨询包含覆盖范围的数据库,就无法知道它是否有效。
有一些带有邮政编码的数据库,这里是一个荷兰数据库:http://www.postcode.nl/index/269/1/0/overzicht-producten-en-diensten.html
您可以使用正则表达式验证邮政编码。
电气公司肯定会给你一份他们涵盖的邮政编码列表吗?然后是一个简单的字符串匹配。。。。
我想你对英国感兴趣。要查看邮政编码是否有效,请从操作系统获取免费的CodePoint开放数据集:http://www.ordnancesurvey.co.uk/oswebsite/products/code-point-open/
您可以将其拉入DG并交叉检查用户输入。请记住,这些数据是基于皇家邮政PAF的,所以不要认为它是100%准确的。在代码中构建一点灵活性/容错性。
如果客户想要覆盖特定的半径,您也可以使用操作系统数据进行距离计算。。。这一切都是免费的,就像在自由和免费啤酒中一样:-)
作为第一步,您可以检查邮政编码是否为有效格式:http://en.wikipedia.org/wiki/Postcodes_in_the_United_Kingdom#Validation-此检查将为您预过滤输入。