0

當用戶在引號中輸入搜索詞時,搜索引擎是否應準確搜索引號內的內容,還是應該對查詢執行一些分析(如不帶引號的查詢)?做(或應該)搜索引擎分析報價中的查詢?

例如,查詢"U.S. of America"是否匹配US of America?同樣,如果查詢"foo-bar"匹配foo bar?當這些查詢沒有引號時,我會認爲答案是肯定的,他們應該匹配。但是,當放在引號中時,用戶建議他們正在尋找完全匹配。問題是如何確切。

我知道這比編程選擇更適合設計選擇,但我怎麼會回答這個問題呢?如果被問到,我的用戶可能不知道我在說什麼。這裏有一個簡單的答案嗎?

+0

是不是一個主觀的問題。可能你不寫一些與Stackoverflow相關的技術問題 –

+1

[ux.se]是一個相關的SE站點。 – unor

回答

0

對於開箱即用的解決方案檢查simple-query-string-query。你會注意到它考慮到了qoutes。

與'foo-bar'vs'foo bar'和'U.S.'相關vs'US'。這是由索引上的分析器和標記器所確定的。那些定義字符串如何被分割成令牌以及令牌如何被修改或甚至被忽略。除非您指定自定義,否則使用standard analyzerthe standard tokenizer。檢查鏈接如何處理您的案例。

瞭解如何在詞組匹配時考慮令牌位置see this post

+0

我認爲你所說的是引號不應該影響分析或標記。所以在這種情況下,''foo-bar「'會匹配'foo bar',但前提是沒有引號的查詢也是如此,對嗎? – speedplane

+1

_Quotes不應該影響分析或標記._正確。因此,在這種情況下,「foo-bar」會匹配foo bar,但只有在沒有引號的查詢時纔會這樣做,對嗎?_正確。帶引號的查詢比較複雜,查看令牌位置。這裏有更多信息。 https://www.elastic.co/guide/en/elasticsearch/guide/current/phrase-matching.html – Andreyy