2015-12-16 49 views
0

搜索「人力資源」,如人力資源部門正在返回文檔,例如90小時。我試過了字形無濟於事,被卡住了。我知道有可能改變char_set,但這意味着我失去了匹配任何其他情況的能力。這一定是Sphinx搜索的問題,一般人都有辦法解決它嗎?強制首字母縮寫爲大寫獅身人面像?

回答

0

我認爲解決這個問題的唯一方法是使用regexp_filter,它可以做區分大小寫的替換。

喜歡的東西...

regexp_filter = \b([A-Z]{2,})\b => upper_\1 

它會用不同的詞替換它,但上前綴,將生存charset_table選項下殼體內的標記。

+0

那麼上面這個基本上是說任何兩個字母變成大寫?然後,我剩下3和4個字母首字母縮略詞,這可能會明確地提出問題,因爲{2,4}肯定會破壞更多,而不是修復。我可能將不得不擴展我的內部邏輯並推動一些!成特定的首字母縮略詞。 – user3649739

+0

任何2個或多個字母大寫的單詞,只會匹配大寫字母。它不會將它大寫,將'HR'變成'upper_hr'。搜索say'upper_hr'會匹配'HR',而不是'hr' – barryhunter

+0

有趣的想法,這意味着我強制搜索首字母縮寫爲upper_ $ acornym。我將你的正則表達式添加到了wordforms中,然後在'HR'和'hr'的各種樣本記錄上進行搜索。搜索upper_hr不會返回任何內容。是否有任何其他索引設置需要進行這項工作?這是一個很好的解決方案,因爲我可以控制輸入首字母縮略詞的推送方式。 – user3649739