<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [Xunsearch PHP-SDK](http://www.xunsearch.com) v1.4.8 權威指南 1. [什么是同義詞搜索](#) 1. [英文同義詞的特殊處理](#) 1. [管理同義詞庫](#) 1. [查看已有同義詞庫](#) 1. [使用同義詞搜索功能](#) # 同義詞搜索 人類語言文化豐富,同一個意思有無數種不同的表達方式。因此,**同義詞**是全文檢索中非常重要和必要的一項基礎功能。從 `1.3.0` 版本起,`Xunsearch` 開始提供同義搜索搜索功能。 ### 1. 什么是同義詞搜索[?]() 為了更好的提升用戶搜索體驗,我們希望用戶在搜索“浙江大學”的時候也同時匹配包含縮寫“浙大”的結果,這就是所謂的同義詞搜索。通常我們說“浙大”是“浙江大學”的同義詞,前者是常用縮寫,后者是標準詞(原詞)。 **同義詞搜索** 完全依賴于您事先設置好的同義詞庫,詞庫內每條記錄由“標準詞(原詞)”和“同義詞”組成,它們都必須是獨立的詞匯,也就是最小的索引單位,不可以是多個詞組成的短語。 > **Tip:** 獨立詞匯的意思對于英文來說就是一個單詞,對于中文來說必須是 `scws` 詞庫中的一個詞。 *Xunsearch* 的同義詞不同于 *Xapian*,會智能進行字段匹配和轉換,您只需維護通用詞庫。 ### 2. 英文同義詞的特殊處理[?]() 英文單詞的同義詞在 xunsearch 中做了一些個特殊處理: - **統一小寫** 統一轉換為小寫字母進行存儲,不支持必須保留大寫字母的同義詞。 - **同根詞支持** 英語同一個單詞有多種不同的形式,如:單復數、過去式和現在分詞等。而它們要傳送的其實是同一種涵義。因此,對于純英文的同義詞記錄會自動進行詞根處理。詞根記錄保存為大寫字母 Z 開頭的記錄。例如: 設置 `find` 是 *search* 的同義詞,那么檢索 *searching* 時如果 *searching* 本身沒有同義詞,那么也會匹配包含 `finding` 或 `finds` 等同根詞的結果。 - **復合詞支持** 支持對多個單詞組成的短語設置同義詞,詞之間用一個半角空格分開,但同義詞仍然只允許一個單詞或中文詞哦。如: 設置 `您好` 為 *hello world* 的同義詞,那么檢索 *hello world ok* 時也會匹配同時包含 `您好` 和 `ok` 的記錄。 ### 3. 管理同義詞庫[?]() 您可以通過 [XSIndex::addSynonym](#) 和 [XSIndex::delSynonym](#) 來添加和刪除同義詞記錄。多次調用這兩個接口函數的時候支持使用[索引緩沖區](#)來提高效率。 參數 `$raw` 是字符串,表示記錄中的原詞(標準詞),`$synonym` 也是字符串,表示記錄中的同義詞,對于刪除操作可以省略該參數表示清空原詞的所有同義詞。 以下為示例代碼,其中的 `$index` 變量是索引操作對像,參見[如何開始使用索引?](#) ~~~ // 給 "搜索" 增加 "檢索" "查找" 兩個同義詞 $index->addSynonym('搜索', '檢索'); $index->addSynonym('搜索', '查找'); // 給 "Hello world" 增加同義詞 "你好" $index->addSynonym('hello world', '你好'); // 刪除 search 的全部同義詞 $index->delSynonym('search'); // 刪除 "搜索" 的同義詞 "檢索" $index->delSynonym('搜索', '檢索'); ~~~ 除了調用 `API` 外,您還可以使用 [Indexer 索引管理工具](#) 進行同義詞管理。 ### 4. 查看已有同義詞庫[?]() 通過 [XSSearch::getAllSynonyms](#) 來獲取當前索引庫內的全部同義詞記錄,返回一個數組,以原詞(標準詞)為鍵,其同義詞列表為值。 以下為示例代碼,其中的 `$search` 變量是搜索操作對像,參見[如何開始使用搜索?](#) ~~~ // 獲取當前庫的前 100 個同義詞記錄 $synonyms = $search->getAllSynonyms(); // 獲取當前庫第 6~15 條同義詞記錄 $synonyms = $search->getAllSynonyms(10, 5); // 查看包含隱藏同義詞根在內的前 20 條記錄 $synonyms = $search->getAllSynonyms(20, 0, true); ~~~ 除了調用 `API` 外,您還可以使用 [Quest 搜索工具](#) 進行同義詞管理。 ### 5. 使用同義詞搜索功能[?]() 同義詞搜索默認是不開啟的,如果您打算使用同義詞搜索,這部分功能隸屬于[構建搜索語句](#)。 在設置查詢語句 [XSSearch::setQuery](#) 之前調用 [XSSearch::setAutoSynonyms](#) 來開啟同義詞功能。 ~~~ // 假設”搜索“有且僅有一個同義詞”檢索“ // 開啟同義詞搜索,輸出: // Xapian::Query(((搜索:(pos=1) SYNONYM 檢索:(pos=89)) AND 世界:(pos=2))) $search->setAutoSynonyms()->setQuery('搜索世界')->getQuery(); // 開啟同義詞搜索,并帶有字段效果,假設 subject 是項目的第二個字段,輸出: // Xapian::Query(((B搜索:(pos=1) SYNONYM B檢索:(pos=89)) AND B世界:(pos=2))) $search->setAutoSynonyms()->setQuery('subject:搜索世界')->getQuery(); // 關閉同義詞搜索,輸出: // Xapian::Query((搜索:(pos=1) AND 世界:(pos=2))) $search->setAutoSynonyms(false)->setQuery('搜索世界')->getQuery(); ~~~ > **Tip:** 您可以分別在開啟/關閉同義詞功能的條件下,對比 [XSSearch::getQuery](#) 查詢語句分析結果。 $Id$ [? Logger 搜索日志管理](#) [在SDK中使用SCWS分詞 ?](#) Copyright ? 2008-2011 by [杭州云圣網絡科技有限公司](http://www.xunsearch.com) All Rights Reserved. ![](https://box.kancloud.cn/2015-09-10_55f11d05d6a60.gif) ![](https://box.kancloud.cn/2015-09-10_55f11d05e13ba.gif) ![](https://box.kancloud.cn/2015-09-10_55f11d05eab38.gif)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看