【问题标题】:Address parsing地址解析
【发布时间】:2019-05-23 17:15:01
【问题描述】:

我必须像谷歌一样解析印度地址,我需要一些如何解析地址的示例。有没有地址解析的例子。是否有任何关于印度城市、地区、州、密码等的免费字典

例如

5/802,vedvihar Society,chandni chowk, pune,411038 附近

将解析为

建筑/街道=5
房子号=802
地方/社会=vedvihar
地标=chandni chowk
城市=浦那
销=411038

【问题讨论】:

  • 什么是“解析地址”?从什么解析到什么?请举个例子
  • 我相信这是当前形式的一个非常本地化的问题。

标签: java parsing


【解决方案1】:

所以这里有一些链接可能有助于解析邮政地址:

Parse usable Street Address, City, State, Zip from a stringJava postal address parser

【讨论】:

    【解决方案2】:

    您可以使用 StringTokenizer (http://docs.oracle.com/javase/6/docs/api/java/util/StringTokenizer.html),您可以在此处找到教程: http://www.devdaily.com/blog/post/java/java-faq-stringtokenizer-example.

    在示例中,字符串在空间边界上进行拆分,在您的情况下,您希望将以下行中的 " " 替换为 ","StringTokenizer st = new StringTokenizer(tags," ");

    确保aString.trim()您的子字符串。

    如果您需要更多信息,请告知

    【讨论】:

    • 如果地址都以相同的方式给出,这将起作用。我的经验是,人们有不同的方式来写同一个地址。我唯一能想象到的地址的预定义结构是从表单或数据库中读取,但无论如何你都不需要解析...... :)
    • 当然你的观点是有效的,但我假设他是从一些格式良好的源文件中获取地址的。如果他会直接从用户输入中获取地址,则始终建议为每个语义字段使用单独的输入字段。
    【解决方案3】:

    是否有印度城市、地区、 状态、密码等

    geonames.org 有一个可下载的城镇数据库,包括邮政编码和行政区划。

    【讨论】:

      【解决方案4】:

      如果你摆脱了 html 标签,那么强大的开源库libpostal 非常适合这个用例。有对不同编程语言的绑定。 Libpostal 是一个 C 库,用于使用统计 NLP 和开放数据解析/规范世界各地的街道地址。该项目的目标是了解所有语言中基于位置的字符串。

      对于Java,有jpostal

      我用 Python 绑定 pypostal 创建了一个简单的 Docker 映像,你可以分拆并非常轻松地尝试它pypostal-docker

      【讨论】:

        【解决方案5】:

        我不知道你的问题的上下文,所以也许这完全是题外话,但这是我几个月前所做的: 我使用谷歌地理编码 API 解决了非常复杂的自然语言处理部分。

        API 让您可以发送全文地址并从中获取格式良好的 XML,您可以轻松地提取街道、城市或任何您需要的信息。

        也许这不是您正在寻找的解决方案,但如果您可以使用 Maps API,您将节省大量时间和精力:http://code.google.com/apis/maps/documentation/geocoding/

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-23
        • 2015-09-14
        • 2013-06-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多