2012-01-26 112 views
0

我期待從一個盒子,這將是像「籃球布裏斯托爾」或「籃球,布裏斯托爾」,甚至「橄欖球橄欖球」以文本的基本搜索技術涉及位置

可能有更多的話有可能是沒有位置,所以只是「籃球」或只是一個位置,即「布裏斯托爾」

我知道很多網站,聰明地工作,當你有一個位置的字符串和搜索使用,但我很茫然,實施這個,因爲有許多方法可以「工作」。我目前使用連接到ElasticSeach數據節點的Java後端。

這個問題主要是什麼被認爲是最可靠和有效的方法?任何成功實施的額外提示將不勝感激。

+0

不確定我在關注。您是否在尋找全文搜索? – amit

+0

我更尋找正確的方法。我是否在數據庫中創建了所有可能的地名的列表,我是否對地理位置進行了地理編碼,如果我這樣做,我怎麼知道它是一個位置。是否有一種不同的方法使用lucene分析器對單詞進行標記後幫助對它們進行分類?從下面看起來好像是地理編碼,所以我現在要去看看那條路,但是歡迎任何其他建議 – Rob

回答

1

想到的第一件事就是列出您可以從數據中獲得的所有可能位置,然後可以將文本中的文字與此列表進行比較。但是,這隻有在您有幾件物品時纔有效。保持它將是不切實際的。

但是,您可以做的是拆分文本並獲取令牌(單詞),然後您可以查詢開源GeoCoding服務,如Nominatim。如果這個單詞確實是一個地方,你應該得到一些GPS座標或類似的結果,如果不是,你應該得到其他的東西。

如果您需要更多的防塵系統,您可能需要查看Google's地理編碼服務。