我在我的webapp上使用solr作爲搜索功能。我在每個用戶的搜索結尾添加一個「*」。所以,如果搜索是:foo
我改爲filename:foo*
Solr字段搜索,通配符和轉義字符
這工作正常,除了經常連字符將被包括在用戶的搜索。搜索filename:foo-bar*
將返回零結果,因爲連字符將刪除搜索詞後面的所有搜索結果。我可以逃避它,因爲filename:foo\-bar*
但我仍然得到零結果。如果我嘗試filename:foo"-"*
,搜索將返回所有文檔。
關於如何讓-
和*
與對方玩好?
感謝您的幫助
嘗試從_text_類型切換到** solr.StrField **類型,併發出'filename:foo-bar *'搜索。 – rchukh
解決了帖子中的問題。但是,它要求查詢區分大小寫。有關如何解決這個問題的任何建議? –
在[這個問題](http://stackoverflow.com/a/2060960/935083)中的響應,以創建不區分大小寫的字符串類型 - 它似乎本地在測試數據上正常工作。 – rchukh