格式皇家邮政 PAF

Posted

技术标签:

【中文标题】格式皇家邮政 PAF【英文标题】:Format Royal Mail PAF 【发布时间】:2014-11-16 03:07:21 【问题描述】:

我正在格式化从示例 Royal Mail PAF 导入到 Royal Mail 规范的地址。

程序员指南中有两个具有相似字段的示例:

Table 8: Building Number in the Building Name field

Field on PAF                  Fictional example
Sub Building Name             FLAT 1
Building Name                 HOLLY HOUSE
Thoroughfare                  OAK AVENUE
Locality                      BIDDENDEN
Post Town                     ASHFORD
Postcode                      TN27 8B

Table 10: Address with Sub Building Name, & using a range in Building Name field

Field on PAF                  Fictional example
Sub Building Name             CARETAKERS FLAT
Building Name                 110-114
Thoroughfare                  HIGH STREET WEST
Post Town                     BRISTOL
Postcode                      BS1 2AW 

这些格式应如下所示:

Flat 1, Holly House
Oak Avenue
Biddenden
ASHFORD
TN27 8BT 

Caretakers Flat
110-114 High Street West
BRISTOL
BS1 2AW 

确定Sub Building Name 是否应该出现在第一行,Building NameBuilding Name 应该出现在第二行,Thoroughfare 的正确逻辑是什么?

请注意,我已经测试过检查 Building Name 中的数字,但在 Building Name 的值为 10 Sellon Court 并生成 10 Sellon Court Western Approach 时失败了

【问题讨论】:

【参考方案1】:

我在文档中进一步找到了答案:

异常规则指标:

i) 建筑物名称的第一个和最后一个字符是数字(例如“1to1”或“100:1”)

ii) 第一个和倒数第二个字符是数字,最后一个字符是字母(例如 12A')

iii) 建筑物名称只有一个字符(例如“A”)

【讨论】:

这可能来得有点晚,但是有一个 Node.js 库,它可以将原始皇家邮件记录解析为格式化的地址行,其中考虑到了建筑异常规则等问题。 github.com/cblanc/uk-clear-addressing。测试套件涵盖了 PAF 开发人员文档中的所有示例。完全披露:我写的。 感谢克里斯,看起来真的很有帮助。从我对 PAF 样本的测试中,我发现在某些情况下,邮政城镇之前也可能有 4 号线。您是否在任何测试中发现了这一点? 是的,不久前找到了它,但从未进入图书馆。所以我刚刚更新了。具有长地址的组织可能会发生这种情况 - lib 会将多余的行合并到以逗号分隔的第 3 行。我发现了另一种未在文档中列出的边缘案例 - 一个只有子建筑物名称的地址。我认为这是 PAF 中的一个错字。还添加了这种情况以及批量格式化的一些性能改进。

以上是关于格式皇家邮政 PAF的主要内容,如果未能解决你的问题,请参考以下文章

将 PAF 文件导入 MySQL

ruby 中的格式字符串(邮政编码)

格式化英国邮政编码以进行存储

用于验证邮政编码格式的 dart 正则表达式

重新格式化邮政编码以包含空格

从 ag-grid 导出时将列格式设置为邮政编码