Java 模糊搜尋:使用 GroupDocs.Search 將文件加入索引

在現代的 Java 應用程式中,java fuzzy search 是提供即時、相關結果於龐大文件集合的變革性技術。無論您是建立企業知識庫、法律資料庫,或是電子商務目錄,學會如何將文件加入索引並啟用進階搜尋功能,皆能讓使用者以快速且精準的方式取得資訊。本教學將帶您完成安裝 GroupDocs.Search for Java、建立索引、填充索引、開啟詞形(模糊)搜尋,以及為正式環境調校效能。

快速解答

  • “add documents to index” 是什麼意思? 它指的是將來源檔案載入可供 GroupDocs.Search 查詢的可搜尋資料結構中。
  • 需要哪個版本的函式庫? GroupDocs.Search for Java 25.4(或更新版本)包含此處示範的所有功能。
  • 我需要授權嗎? 免費試用可用於開發;正式環境則需商業授權。
  • 我可以搜尋不同的詞形嗎? 可以——在 SearchOptions 中啟用 setUseWordFormsSearch(true)。
  • Maven 是唯一的安裝方式嗎? 不是,您也可以直接下載 JAR(請參考 Direct Download 連結)。

什麼是 “add documents to index”?

將文件加入索引表示掃描來源檔案、擷取可搜尋的文字,並將這些資訊以結構化格式儲存,以便快速查找。GroupDocs.Search 內建支援多種檔案類型,讓您專注於業務邏輯而非解析。產生的索引可儲存在磁碟或記憶體中,讓查詢時無需重新讀取原始檔案即可快速取得結果。

為何使用進階的 Java 文字搜尋技術?

只需載入一次索引,即可執行模糊、大小寫不敏感或相近度查詢,而無需重新處理檔案。啟用這些技術在實際測試中可提升召回率最高達 30 %,即使使用者未輸入精確的詞彙或拼寫,也能找到相關結果。

前置條件

  • 必需的函式庫:GroupDocs.Search for Java 25.4。
  • 環境設定:Java JDK 8 或更新版本、Maven(或手動 JAR 管理)。
  • 知識前提:基本的 Java 程式設計與 Maven 依賴管理。

設定 GroupDocs.Search for Java

在撰寫任何程式碼之前,請確保您的專案已取得此函式庫。

Maven 設定

pom.xml 檔案是 Maven 的專案描述檔,用於宣告相依性。

<repositories>
    <repository>
        <id>repository.groupdocs.com</id>
        <name>GroupDocs Repository</name>
        <url>https://releases.groupdocs.com/search/java/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-search</artifactId>
        <version>25.4</version>
    </dependency>
</dependencies>

直接下載

如果您不想使用 Maven,也可以從官方頁面下載最新的 JAR: GroupDocs.Search for Java releases。

欲取得詳細使用說明,請參閱 GroupDocs Documentation。

取得授權步驟

  1. 免費試用 – 無償探索 API。
  2. 暫時授權 – 延長試用期以進行更深入測試。
  3. 購買 – 取得商業授權以供正式環境使用。

支援的搜尋檔案類型(Java)

GroupDocs.Search 支援 超過 50 種輸入與輸出格式,包括 DOCX、PDF、PPTX、XLSX、TXT、HTML 以及常見的影像類型,讓您幾乎可以索引任何業務使用的文件。

步驟式實作指南

1. 建立與設定索引

Index 類別是代表儲存在磁碟上的可搜尋儲存庫的最高層物件。

概觀

我們將在磁碟上建立一個資料夾,用於保存索引檔案。

程式碼

import com.groupdocs.search.Index;

String indexFolder = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/SearchForDifferentWordForms";
Index index = new Index(indexFolder);

說明:Index 建構子指向一個資料夾,所有索引資料將儲存在該處。請將 YOUR_DOCUMENT_DIRECTORY 替換為您機器上的實際路徑。

2. 如何將文件加入索引

add 方法會遞迴掃描資料夾、擷取文字,並將其儲存至索引中。

概觀

GroupDocs.Search 會掃描指定的目錄,並索引其中所有支援的檔案類型。

程式碼

String documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath";
index.add(documentsFolder);

說明:確保路徑正確且應用程式具有讀取權限。此方法會分批處理檔案,以降低記憶體使用量。

3. 設定詞形搜尋的 Search Options

SearchOptions 包含控制查詢處理方式的參數。

概觀

我們將調整 SearchOptions 以開啟詞形(模糊)搜尋。

程式碼

import com.groupdocs.search.SearchOptions;

SearchOptions options = new SearchOptions();
options.setUseWordFormsSearch(true); // Enables search for different grammatical variations of words.

說明:設定 setUseWordFormsSearch(true) 會指示引擎擴展查詢,包含已知的詞形變化,提升對如 “wish”、 “wished”、 “wishes” 等變形的召回率。

4. 執行搜尋

SearchResult 包含匹配文件的清單與摘要片段。

概觀

我們將搜尋關鍵字 “wished”,並取得匹配的文件。

程式碼

import com.groupdocs.search.SearchResult;

String query = "wished";
SearchResult result = index.search(query, options);

說明:search 方法使用我們定義的選項對索引內容執行查詢。回傳的 SearchResult 為每筆命中提供文件參考與突顯的摘要片段。

常見問題與故障排除

  • 路徑錯誤 – 請再次確認 indexFolder 與 documentsFolder 是否有拼寫錯誤且具備正確的存取權限。
  • 不支援的檔案格式 – 請確認您的文件屬於 GroupDocs.Search 文件中列出的 50+ 種格式之一。
  • 效能緩慢 – 針對大型語料庫,請分批建立索引、監控 JVM 堆積使用情況,並將索引儲存在 SSD 上。

實務應用

  1. 企業文件管理 – 能在數千份檔案中快速定位政策、合約或人力資源手冊。
  2. 法律研究 – 即使用詞不完全相同,也能透過詞形搜尋找到先例案件。
  3. 電商目錄 – 讓購物者以多樣化的詞彙搜尋商品說明,提升轉換率。

效能建議

  • 只有在新增文件或現有文件變更時才重新索引。
  • 使用 Java 的 -Xmx 參數為大型索引分配足夠的堆積記憶體(例如 -Xmx4g)。
  • 定期呼叫 index.optimize()(若支援)以壓縮索引檔案並減少磁碟 I/O。

結論

現在您已了解如何 add documents to index、啟用 java fuzzy search,並微調 GroupDocs.Search for Java。這些技術讓您能在任何文件集合上構建即時且功能豐富的搜尋體驗。

後續步驟

  • 嘗試模糊匹配與自訂排序。
  • 將搜尋模組整合至 REST API 供前端使用。
  • 透過設定特定語言的分析器,探索多語言支援。

常見問答

Q1: GroupDocs.Search 支援哪些格式?
A1: 支援超過 50 種格式,包括 DOCX、PDF、PPTX、XLSX、TXT、HTML 以及常見的影像類型。完整列表請參閱官方文件。

Q2: 如何使用新文件更新我的索引?
A2: 再次呼叫 index.add(newDocumentsFolder);函式庫只會加入新檔或已變更的檔案,既有條目保持不變。

Q3: 我可以進一步自訂搜尋查詢嗎?
A3: 可以——SearchOptions 提供模糊搜尋、大小寫敏感度、結果分頁以及自訂排序演算法等選項。

Q4: 我的搜尋速度很慢——該怎麼辦?
A4: 將索引儲存在高速 SSD 上,增加 JVM 堆積大小(-Xmx),並避免索引不必要的大檔案。同時,僅在需要時才啟用詞形搜尋。

Q5: 我可以從哪裡取得社群協助?
A5: 使用官方支援論壇: GroupDocs Support Forum。


最後更新: 2026-05-22
測試環境: GroupDocs.Search 25.4 for Java
作者: GroupDocs


相關教學