【发布时间】:2018-11-02 13:47:40
【问题描述】:
目前我正在努力解决地址规范化问题。开头,ul = street。在我的国家,大多数情况下会出现格式为"ul. Marii Skłodowskiej-Curie" 的街道,街道尽头没有编号,但在特定情况下会出现类似“ul. Dywizjonu 303”这样的街道,其中 303 不是门牌号。
我有一个地址字典,我需要检查街道是否存在。第一个示例很容易验证,因为我从字符串末尾删除所有数字并将结果字符串与字典进行比较,但另一方面,在第二个示例中,如果我从字符串末尾删除所有数字,我将得到“ul.Dywizjonu”没有以正常方式与街道集成的303。
我的问题是,是否可以从字符串末尾删除多余的数字和字符并从字符串中获取最后一对或单个数字:
例如:
"ul. Warszawska 150 12/45" -> 分离结果 150 和 ul.华沙
"ul. Warszawska 17/19" -> 分离结果 17 和 ul.华沙
"ul. Lipca 80r. 90" -> 分离结果 90 和 ul.利普卡 80r.
"ul. Warszawska 14 10/120/2b" -> 分离结果 14 和 ul.华沙
目前我从字符串中删除了所有多余的多空格并被空格分割,但我完全不知道接下来我应该做什么来获得像上面这样的理想结果。
提前感谢您的所有帮助。
【问题讨论】:
-
1.在空间上分裂。 2. 检查最后两个数组条目是否包含数字:如果两者都包含数字,则丢弃最后一个条目。如果只有最后一个条目包含“/”上的数字拆分。保留第一个条目。垃圾休息。如果我理解正确的话。
-
知道一个数字是否是街道名称的一部分背后的规则是什么?为什么
ul. Dywizjonu 303的 303 部分但 14 不是ul. Warszawska的一部分?我的直觉是,您必须在搜索到的街道名称中添加标记,直到它在您的街道列表中匹配