Обсуждения Обратная связь
Стандартизаця записи адресов.
21.02.2023
ChatGPT эту статью не писал. :)
Одним из первых технических решений CityScale было извлечение адресов из текстов.
Таким образом мы определяем места совершения преступлений по текстам судебных решениях.
Извлечение реализуется регулярными выражениями.
Сначала они были достаточно простыми, но становились все сложнее, чтобы учитывать все больше вариантов записи адресов.
Сейчас они довольно эффективны, особенно с учетом размера и гибкости кода. И дальнейшее развитие выражений уже связано с исключительными случаями, которые лучше всего обрабатывать отдельно по справочникам.
В процессе разработки было разобраны сотни, если не тысячи, варианты адресов. Среди них много ложных и неоднозначных записей, которые отнимают дополнительные силы и время, чего было бы гораздо меньше при стандартизации записи.
Вопрос стандартизации также актуален и тем, что в Украине должен появиться Единый адресный реестр.
Проблемы в основном возникают с номерами домов, а именно буквами и дробями.
Например, 178 и 17В, 2Б и 26, 3О и 30, 2/4 и 2-4, 2\4 и 2/4, вул. Садовая 2-а 30 и вул. 2-а Садова 30.
Здесь путаются числа и буквы, потому что простой пробел часто пропускается.
Дефис - лучше, но он также не подходит, потому что может совпадать с числителями в названии улицы.
Точно так же дефис не работает для дробных номеров, потому что он путается со списком адресов: «2-4» может означать как «2/4», так и «2,3,4».
Для последнего примера мы можем сказать: почему бы не стандартизировать обязательную запятую или сделать числитель всегда перед именем?
Но мы стремимся свести к минимуму количество обязательных символов, как это делают операторы, и при этом гарантировать надежность.
Но мы стремимся свести к минимуму количество обязательных символов, как это делают операторы, и при этом гарантировать надежность.
Что касается числителей в названии, в поиске и списках по адресам, для удобства, часто первой идет определяющая часть, то есть «Садова» или «Шевченко» (Т.Г. Шевченка и Шевченка Т.Г.). Требовать изменений для распространенной практики будет крайне сложно, поэтому мы минимизируем усилия и здесь.
Стандарт, к которому мы пришли: буква в двойных кавычках, и пробел в качестве вспомогательного визуального разделения, а для дроби - прямая косая черта(/).
По стандарту примеры будут выглядеть, как:
178 и 17 "В" или 17"В",
2 "б" или 2"б" и 26,
3 "О" або 3"О" и 30,
вул. Садова 2 "а" 30(два номера в списке) и вул. 2-а Садова 30 (вулиця Друга Садова 30).
178 и 17 "В" или 17"В",
2 "б" или 2"б" и 26,
3 "О" або 3"О" и 30,
вул. Садова 2 "а" 30(два номера в списке) и вул. 2-а Садова 30 (вулиця Друга Садова 30).
Для других частей адреса, таких как: подъезды, корпуса, квартиры, офисы, должны быть четкие указания, полные или сокращенные. То есть невозможно записать: 2\1, 2/1 или 2-1, для 1-го подъезда в доме № 2 или 1-е здание комплекса зданий. Дробь должна использоваться только для домов на пересечении улиц, а дефис - для списка номеров или в сложенном названии.
Есть еще редкие случаи с адресами в военных городках, отсутствие имен улиц в горных деревнях. Но их на порядки меньше, и здесь вопрос больше о стандартизации в целом, а не только в их записи.
Предыдущая: Публикация от 14.11.2022.
Другие публикации.
blog comments powered by Disqus