翻譯|使用教程|編輯:胡濤|2023-03-07 09:53:01.020|閱讀 201 次
概述:在本文中,我將演示如何使用 Java 以編程方式查找和替換 Word (DOC/DOCX) 文檔中的文本
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
Aspose.Words 是一種高級(jí)Word文檔處理API,用于執(zhí)行各種文檔管理和操作任務(wù)。API支持生成,修改,轉(zhuǎn)換,呈現(xiàn)和打印文檔,而無需在跨平臺(tái)應(yīng)用程序中直接使用Microsoft Word。此外,
Aspose API支持流行文件格式處理,并允許將各類文檔導(dǎo)出或轉(zhuǎn)換為固定布局文件格式和最常用的圖像/多媒體格式。
在本文中,我將演示如何使用 Java 以編程方式查找和替換 Word (DOC/DOCX) 文檔中的文本。分步指南和代碼示例將涵蓋在 Word 文檔中查找和替換文本的各種情況。
MS Word 提供了一種查找和替換文檔中文本的簡(jiǎn)便方法。查找和替換文本的一種流行用例是在文檔中的敏感信息在不同實(shí)體之間共享之前刪除或替換它們。但是,手動(dòng)過程可能需要您安裝 MS Word 并單獨(dú)更新每個(gè)文檔。在這種情況下,它會(huì)方便又省時(shí),尤其是當(dāng)您在桌面或 Web 應(yīng)用程序中集成了查找和替換功能時(shí)。因此,讓我們開始了解如何在各種場(chǎng)景中使用 Java 查找和替換 Word 文檔中的文本。
為了實(shí)現(xiàn)查找和替換功能,我們將使用Aspose.Words for Java,這是一個(gè)功能強(qiáng)大、功能豐富且易于使用的 Java 平臺(tái)文字處理 API。您可以下載其 JAR 或使用以下配置將其安裝在基于 Maven 的應(yīng)用程序中。
存儲(chǔ)庫:
<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>
讓我們從解決一個(gè)簡(jiǎn)單的查找和替換場(chǎng)景開始,我們將在輸入的 Word 文檔中找到單詞“Sad”。以下是執(zhí)行此操作的步驟。
以下代碼示例顯示如何使用 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");
下面是我們?cè)诒疚闹惺褂玫妮斎?Word 文檔。
以下是查找并替換單詞“sad”后的輸出。
您還可以自定義 API 以根據(jù)相似性查找和替換文本。例如,單詞“sad”、“mad”和“bad”遵循以“ad”結(jié)尾的類似模式。電子郵件 ID 是此類文本的另一個(gè)示例。在這種情況下,您可以定義一個(gè)正則表達(dá)式模式來查找和替換所有出現(xiàn)的具有特定模式的文本。以下是實(shí)現(xiàn)此目的的步驟。
以下代碼示例展示了如何使用 Java 根據(jù)特定模式查找和替換相似詞。
// 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 文檔的頁眉/頁腳中查找和替換文本。以下是執(zhí)行此操作的步驟。
以下代碼示例顯示了如何使用 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 中查找和替換帶有元字符的文本
當(dāng)您需要查找和替換分為多行或多段的短語時(shí),可能會(huì)出現(xiàn)這種情況。在這種情況下,您必須注意段落、部分或換行符。Aspose.Words for Java 使您可以輕松輕松地處理此類情況。以下是可用于不同中斷的元字符:
&p : 分段符
&b : 分節(jié)符
&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 文檔中的文本 ,要是您還有其他關(guān)于產(chǎn)品方面的問題,歡迎咨詢我們,或者加入我們官方技術(shù)交流群。
歡迎下載|體驗(yàn)更多Aspose產(chǎn)品
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn