我在他们不善形成的地址表格,我需要他们相当不错的使用进行地理编码。我已经尝试了一些Python库来解析地址,但他们无法弄清楚其中的一些。作为一个例子,使用正则表达式和python移动城市地址块,加符号
“N MONON AVE FRANCESVILLEW¯¯YELLOW ST”
的状态为所有这些是印第安纳州,我没有问题串联成提交的字符串。在上面的例子中,它是一个交叉点,其地理编码器不接受为:
“N MONON AVE &W¯¯YELLOW ST FRANCESVILLE”
我的想法是最简单的方法是找到之后的第一字街道类型(Ave,Dr,Ct等),将其移动到最后,并在其位置添加一个&符号。
我有这样的代码,这可能是效率极其低下,但它仅捕获的第一条街道类型;在上面的例子中,它会输出AVE。
/(Avenue|Lane|Road|Boulevard|Drive|Street|Ave|Dr|Rd|Blvd|Ln|St)[^(Avenue|Lane|Road|Boulevard|Drive|Street|Ave|Dr|Rd|Blvd|Ln|St)]/i
我不知道该怎么做,就是告诉它在街道类型的第一个实例后立即抓取任何单词。从那里,我应该可以使用re.search和.group [n]来提取城市,并将其放入解析的字符串中。
见https://regex101.com/r/Am033H/1和http://ideone.com/UNgnAy。 –