Я работаю над аналогичным алгоритмом, как мы говорим, он должен обрабатывать адреса в Канаде, США, Мексике и Великобритании к тому времени, как я закончу. Проблема, с которой я сталкиваюсь, заключается в том, что они находятся в нашей базе данных в формате открытого текста из 3 полей [кто бы ни подумал, что , что - это хорошая идея, это должно быть застрелено ИМХО], поэтому стараюсь обрабатывать сельские маршруты, общие поставки, приемники большого объема, несколько стран, провинция или штат, округ, почтовые индексы и почтовые индексы, орфографические ошибки - это не маленькая или простая задача.
Одни только орфографические ошибки были немалым подвигом - особенно когда вы добираетесь до стран, которые используют французские имена - сопоставление святых, святых, святых, святых, святых, святых, святых, великих, гранд, грандов, гранд с или без периода или переносы большей части имени не вызывают проблем с производительностью, особенно когда St может означать улицу saint или и может или не может быть введен в правильном контексте (то есть женский или мужской). Что делать, если адрес в основном введен правильно, но имеет неправильный провинцию или почтовый индекс?
Одним из мест, где можно начать поиск, является Алгоритм расстояния Левенштейна , который, по моему мнению, действительно полезен для устранения большой части орфографических ошибок. После этого это в основном случай поиска ключевых слов и сравнения с почтовой базой данных.
Мне было бы очень интересно сотрудничать со всеми, кто в настоящее время разрабатывает инструменты для этого, возможно, мы сможем помочь друг другу в поиске общего решения. Я уже нахожусь на этом пути и преодолел все проблемы, о которых я говорил до сих пор, если бы кто-то еще работал над той же проблемой, было бы очень полезно отразить идеи.
Приветствия -
[Бен в афсинк точка ча]