代码之家  ›  专栏  ›  技术社区  ›  DevDevDev

确定搜索请求是谷歌API中使用的地址还是业务的智能方法?

  •  2
  • DevDevDev  · 技术社区  · 16 年前

    问题是,我有一个带有搜索栏的应用程序,用户可以输入“18街”或“星巴克”,它分别使用谷歌地理编码和本地搜索API来获取结果。

    我想知道有没有一种聪明的方法来确定给定的输入字符串是需要地理编码的地址,还是需要使用本地搜索的业务名称。

    很明显,我可以尝试手动操作一些东西,但我想知道是否有人已经这样做了,或者谷歌自己提供了这样的功能。

    干杯。

    2 回复  |  直到 12 年前
        1
  •  2
  •   Nathan Taylor    16 年前

    首先想到的是寻找街道地址的正则表达式,但重要的问题是系统如何限定地址。

    这是合理的,足以匹配一些在格式上相当一致的东西,如完全合格的街道地址,但当它像“18街”时,你怎么知道他们实际上不想要一家名为“18街”的餐馆?您可能会考虑使用一个正则表达式,它松散地尝试匹配街道地址,如果找到了地址,就称为geocoding。如果地理编码没有返回任何结果,则默认为本地搜索。

        2
  •  1
  •   DevDevDev    16 年前

    默认情况下,它是本地搜索,并处理地理代码和业务搜索。它有些粗糙,但我想这是可以预料的。

    您可以通过指定

    捷运?这个可选参数 指定列出 用户感兴趣。有效值 包括:

    * blended - request KML, Local Business Listings, and Geocode results
    * kmlonly - request KML and Geocode results
    * localonly - request Local Business Listings and Geocode results
    
    推荐文章