翻譯|使用教程|編輯:胡濤|2023-03-07 09:53:01.020|閱讀 201 次
概述:在本文中,我將演示如何使用 Java 以編程方式查找和替換 Word (DOC/DOCX) 文檔中的文本
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Aspose.Words 是一種高級Word文檔處理API,用于執行各種文檔管理和操作任務。API支持生成,修改,轉換,呈現和打印文檔,而無需在跨平臺應用程序中直接使用Microsoft Word。此外,
Aspose API支持流行文件格式處理,并允許將各類文檔導出或轉換為固定布局文件格式和最常用的圖像/多媒體格式。
在本文中,我將演示如何使用 Java 以編程方式查找和替換 Word (DOC/DOCX) 文檔中的文本。分步指南和代碼示例將涵蓋在 Word 文檔中查找和替換文本的各種情況。
MS Word 提供了一種查找和替換文檔中文本的簡便方法。查找和替換文本的一種流行用例是在文檔中的敏感信息在不同實體之間共享之前刪除或替換它們。但是,手動過程可能需要您安裝 MS Word 并單獨更新每個文檔。在這種情況下,它會方便又省時,尤其是當您在桌面或 Web 應用程序中集成了查找和替換功能時。因此,讓我們開始了解如何在各種場景中使用 Java 查找和替換 Word 文檔中的文本。
為了實現查找和替換功能,我們將使用Aspose.Words for Java,這是一個功能強大、功能豐富且易于使用的 Java 平臺文字處理 API。您可以下載其 JAR 或使用以下配置將其安裝在基于 Maven 的應用程序中。
存儲庫:
<repository> <id>AsposeJavaAPI</id> <name>Aspose Java API</name> <url>//repository.aspose.com/repo/</url> </repository>
依賴:
<dependency> <groupId>com.aspose</groupId> <artifactId>aspose-words</artifactId> <version>20.5</version> <classifier>jdk17</classifier> </dependency>
讓我們從解決一個簡單的查找和替換場景開始,我們將在輸入的 Word 文檔中找到單詞“Sad”。以下是執行此操作的步驟。
以下代碼示例顯示如何使用 Java 查找和替換 Word DOCX 文檔中的文本。
// Load a Word DOCX document Document doc = new Document("document.docx"); // Find and replace text in the document doc.getRange().replace("sad", "[replaced]", new FindReplaceOptions(FindReplaceDirection.FORWARD)); // Save the Word document doc.save("Find-And-Replace-Text.docx");
下面是我們在本文中使用的輸入 Word 文檔。
以下是查找并替換單詞“sad”后的輸出。
您還可以自定義 API 以根據相似性查找和替換文本。例如,單詞“sad”、“mad”和“bad”遵循以“ad”結尾的類似模式。電子郵件 ID 是此類文本的另一個示例。在這種情況下,您可以定義一個正則表達式模式來查找和替換所有出現的具有特定模式的文本。以下是實現此目的的步驟。
以下代碼示例展示了如何使用 Java 根據特定模式查找和替換相似詞。
// Load a Word DOCX document Document doc = new Document("document.docx"); // Find and replace similar words in the document FindReplaceOptions options = new FindReplaceOptions(); doc.getRange().replace(Pattern.compile("[B|S|M]ad"), "[replaced]", options); // Save the Word document doc.save("Find-And-Replace-Text.docx");
以下是更新相似詞后的Word文檔截圖。
替換 Word 文檔頁眉/頁腳中的文本
Aspose.Words 還允許您僅在 Word 文檔的頁眉/頁腳中查找和替換文本。以下是執行此操作的步驟。
以下代碼示例顯示了如何使用 Java 查找和替換 Word 文檔頁眉/頁腳中的文本。
// Load a Word DOCX document Document doc = new Document("document.docx"); // Access header footer collection HeaderFooterCollection headersFooters = doc.getFirstSection().getHeadersFooters(); HeaderFooter footer = headersFooters.get(HeaderFooterType.FOOTER_PRIMARY); // Set find and replace options FindReplaceOptions options = new FindReplaceOptions(); options.setMatchCase(false); options.setFindWholeWordsOnly(false); footer.getRange().replace("This is footer of the document.", "Copyright (C) 2020 by Aspose Pty Ltd.", options); // Save the Word document doc.save("Find-And-Replace-Text.docx");
以下屏幕截圖顯示了 Word 文檔頁腳中的更新文本。
使用 Java 在 Word DOCX 中查找和替換帶有元字符的文本
當您需要查找和替換分為多行或多段的短語時,可能會出現這種情況。在這種情況下,您必須注意段落、部分或換行符。Aspose.Words for Java 使您可以輕松輕松地處理此類情況。以下是可用于不同中斷的元字符:
&p : 分段符
&b : 分節符
&m : 分頁符
&l:換行符
下面的代碼示例演示了如何在 Word 文檔中查找和替換帶有段落分隔符的文本。
// Load a Word DOCX document Document doc = new Document("document.docx"); // Set options FindReplaceOptions options = new FindReplaceOptions(); // Disable matching case and finding whole words only options.setMatchCase(false); options.setFindWholeWordsOnly(false); // Replace text with paragraph break doc.getRange().replace("First paragraph ends.&pSecond paragraph starts.", "[replaced]", options); // Save the Word document doc.save("Find-And-Replace-Text.docx");
下面是輸出的Word文檔的截圖。
以上便是使用 Java 查找和替換 Word 文檔中的文本 ,要是您還有其他關于產品方面的問題,歡迎咨詢我們,或者加入我們官方技術交流群。
歡迎下載|體驗更多Aspose產品
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn