0
我試圖使用Neo4J的Lucene全文索引設置自動導航/自動完成搜索功能。我希望我的搜索具有模糊性。 這是我的代碼。Neo4j Lucene索引 - 使用通配符執行模糊搜索
Index<Node> ind = db.index().forNodes("node_auto_index",
MapUtil.stringMap(IndexManager.PROVIDER, "lucene", "type", "fulltext")) ;
for (Node node : ind.query("name:" + searchTerm.replace(" ", "?") + "~")) {
...
}
在searchTerm中存在空格字符時會出現問題。 Lucene將該空間視爲下一個字段的開始並引發錯誤。我想出了空間字符可以被替換使用?通配符。但如果我這樣做,我不會從lucene獲得任何匹配。圍繞這個問題的工作是什麼?
此外,我想知道,如果它可以組合* &〜因爲我想要的結果開始的話是類型,而〜運營商尋找的項目的出現在字符串的任何地方
然後有幾個選項。我建議不要使用Neo4j進行自動完成。相反,您應該使用您熟悉的文件存儲格式創建JSON映射。查看我的關於使用Neo4j構建預測性自動填充的示例 - https://github.com/kbastani/predictive-autocomplete –