首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查英国邮政编码以进行验证

检查英国邮政编码以进行验证
EN

Stack Overflow用户
提问于 2019-05-24 22:57:21
回答 1查看 271关注 0票数 3

我需要把英国的邮政编码和名单核对一下。

英国的邮政编码是标准格式,但列表中只包含我需要检查的外发部分。

该列表包含一系列外发邮政编码,还包含一些与此外发邮政编码相关的数据,例如

代码语言:javascript
复制
AL     St Albans
B      Birmingham
BT     Belfast
TR     Taunton
TR21    Taunton X
TR22    Taunton Y

我的目标是当我得到一个邮政编码时,例如B20 7TP,我可以搜索并找到伯明翰。

有什么想法吗?

这个问题不同于那些可能的答案,但在我的例子中,我需要检查完整的邮政编码,而只检查向外邮政编码。

EN

回答 1

Stack Overflow用户

发布于 2019-05-24 23:08:25

如果您有整个邮政编码,并且只想使用outcode,请删除最后三个字符并使用剩下的字符。所有邮政编码都以模式digit-alpha-alpha结尾,因此删除这些字符将得到outcode;任何不符合该模式或在删除该子字符串后不提供有效outcode的字符串都不是有效的邮政编码。(Source)

如果您愿意承担外部(和基于互联网)的依赖,您可以考虑使用类似https://postcodes.io的东西,特别是该API的outcodes部分。我与postcodes.io没有任何关系;我只是在谷歌上找到它的。

根据文档,/outcodes将返回

H115代码下的行政区域/选区代码<代码>H216<代码>H117<代码><代码>H117<代码><代码>H119 WGS84纬度<代码>H220<代码>H121<代码>代码<代码>H222<代码>H123代码中的教区/社区<代码>H224<代码>F225

作为参考,对/outcodes/TA1的调用返回:

代码语言:javascript
复制
{
  "status": 200,
  "result": {
    "outcode": "TA1",
    "longitude": -3.10297767924529,
    "latitude": 51.0133987332761,
    "northings": 124359,
    "eastings": 322721,
    "admin_district": [
      "Taunton Deane"
    ],
    "parish": [
      "Taunton Deane, unparished area",
      "Bishop's Hull",
      "West Monkton",
      "Trull",
      "Comeytrowe"
   ],
    "admin_county": [
      "Somerset"
    ],
    "admin_ward": [
      "Taunton Halcon",
      "Bishop's Hull",
      "Taunton Lyngford",
      "Taunton Eastgate",
      "West Monkton",
      "Taunton Manor and Wilton",
      "Taunton Fairwater",
      "Taunton Killams and Mountfield",
      "Trull",
      "Comeytrowe",
      "Taunton Blackbrook and Holway"
    ],
    "country": [
      "England"
    ]
  }
}

如果您有完整的邮政编码,/postcodes端点将返回更详细的信息,我不会在这里包含这些信息,但它确实包含了outcode和incode作为单独的字段。

当然,我建议将任何调用的结果缓存到远程API。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56295137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档