我有一個包含AT & T的索引作爲字段,但是當我搜索此字段時,我們不能在查詢中放入&簽名,因此它被編碼爲AT%26T。搜索AT%26T什麼都不會返回, 有什麼方法可以使用分析器或過濾器來索引這種類型的術語。如何在索引索引中處理AT&T令牌
注:我已經使用WordDelimiter分析儀reserveOriginal = 1 ......但沒有奏效
我有一個包含AT & T的索引作爲字段,但是當我搜索此字段時,我們不能在查詢中放入&簽名,因此它被編碼爲AT%26T。搜索AT%26T什麼都不會返回, 有什麼方法可以使用分析器或過濾器來索引這種類型的術語。如何在索引索引中處理AT&T令牌
注:我已經使用WordDelimiter分析儀reserveOriginal = 1 ......但沒有奏效
你可以嘗試尋找AT&T
否則你可以在管理找出/分析查詢和索引階段的術語AT & T發生了什麼。有了詳細的介紹,您可以非常清楚地看到分析儀對您的條款做了什麼。
也許你可以嘗試使用catenateWords =「1」。所以AT & T我也會被索引爲ATT。 另外,還要確保在您都出現儀:
<analyzer type="query"> //this will define how the query is parsed and split into tokens before searching it
和
<analyzer type="index">// this will define how the field is indexed
如果你只有這個標籤<分析>超過頻譜儀將在查詢和索引時均可使用。
您需要稍微調整WordDelemiter。見我調整我爲jetwick做搜索主題標籤ALA #java
背景:AT &因爲「&」作爲其無數字或字符,但去除T被標記化通常爲AT和T在上面的課程中,您可以將'&'符號作爲數字處理,並且包含'&'符號的所有東西都將被標記爲'AT & T'(以及'AT'和'T'我認爲),但只有在preserveOriginal = 1或者你把它們當作字符來處理,但是它不會分成'AT'和'T'我認爲字符串的所有位置都被檢測爲字符
順便說一句:你需要重新索引並在查詢字符串上應用相同的分析器/標記器!
你使用了什麼標記器? – Dorin
我使用WordDelimiter –