Я форматирует адреса, импортированные из образца Royal Mail PAF в Royal Mail Specification.Формат Royal Mail PAF
В руководстве программиста есть два примера с аналогичными полями:
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 Name
или Building Name
должна быть на второй линии с номером Thoroughfare
?
Обратите внимание, что я испытал проверки цифры в Building Name
, но он не где Building Name
имеет значение 10 Sellon Court
и производит 10 Sellon Court Western Approach
Это, вероятно, приходит немного поздно, но есть библиотека Node.js, которая может анализировать необработанные записи Royal Mail в форматированных адресных строках, в которых учитываются такие вопросы, как правило исключения для здания. https://github.com/cblanc/uk-clear-addressing. Набор тестов охватывает все примеры в документах разработчиков PAF. Полное раскрытие: я написал это. –
Спасибо Крису, который выглядит очень полезным. Из моих тестов в образце PAF я обнаружил, что в определенных обстоятельствах также может быть линия 4 до почтового города. Вы нашли это в любом из ваших тестов? –
Да, нашел это некоторое время назад, но так и не попал в библиотеку. Поэтому я обновляюсь только сейчас. Это может случиться с организациями с длинными адресами - lib объединит дополнительные строки в строку 3, разделенные запятыми. Я обнаружил еще один кэш, который не указан в документах - адрес с именем подстрочного здания. Я думаю, что это была опечатка в PAF. Этот случай также был добавлен, а также некоторые улучшения производительности для массового форматирования. –