Word处理控件Aspose.Words功能演示:使用 Java 查找和替换 Word 文档中的文本

翻译|使用教程|编辑:胡涛|2023-03-07 09:53:01.020|阅读 92 次

概述:在本文中,我将演示如何使用 Java 以编程方式查找和替换 Word (DOC/DOCX) 文档中的文本

#助力企业成功·知名软控件产品销售,立即咨询>>

相关链接:

aspose下载

Aspose.Words 是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。此外,

Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

Aspose.words 最新下载

在本文中,我将演示如何使用 Java 以编程方式查找和替换 Word (DOC/DOCX) 文档中的文本。分步指南和代码示例将涵盖在 Word 文档中查找和替换文本的各种情况。

MS Word 提供了一种查找和替换文档中文本的简便方法。查找和替换文本的一种流行用例是在文档中的敏感信息在不同实体之间共享之前删除或替换它们。但是,手动过程可能需要您安装 MS Word 并单独更新每个文档。在这种情况下,它会方便又省时,尤其是当您在桌面或 Web 应用程序中集成了查找和替换功能时。因此,让我们开始了解如何在各种场景中使用 Java 查找和替换 Word 文档中的文本

用于在 Word 文档中查找和替换文本的 Java API

为了实现查找和替换功能,我们将使用Aspose.Words for Java,这是一个功能强大、功能丰富且易于使用的 Java 平台文字处理 API。您可以下载其 JAR 或使用以下配置将其安装在基于 Maven 的应用程序中。

存储库:

<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>

依赖:

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>20.5</version>
<classifier>jdk17</classifier>
</dependency>
使用 Java 查找和替换 Word 文档 (DOC/DOCX) 中的文本

让我们从解决一个简单的查找和替换场景开始,我们将在输入的 Word 文档中找到单词“Sad”。以下是执行此操作的步骤。

  • 创建Document类的实例并将 Word 文档的路径传递给它。
  • 使用Document.getRange.replace(String, String, FindReplaceOptions)方法查找和替换文本。
  • 使用Document.save(String)方法保存文档。

以下代码示例显示如何使用 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 文档。

使用 Java 查找和替换 DOCX 中的文本

以下是查找并替换单词“sad”后的输出。

查找并替换一个词
使用 Java 查找和替换 Word DOC/DOCX 中的相似词

您还可以自定义 API 以根据相似性查找和替换文本。例如,单词“sad”、“mad”和“bad”遵循以“ad”结尾的类似模式。电子邮件 ID 是此类文本的另一个示例。在这种情况下,您可以定义一个正则表达式模式来查找和替换所有出现的具有特定模式的文本。以下是实现此目的的步骤。

  • 创建Document类的实例并将 Word 文档的路径传递给它。
  • 使用Pattern.compile()方法定义正则表达式模式并将其传递给Document.getRange().replace(Pattern pattern, String replacement, FindReplaceOptions options)方法。
  • 使用Document.save(String)方法保存更新的文档。

以下代码示例展示了如何使用 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文档截图。

使用 Java 查找和替换相似词

替换 Word 文档页眉/页脚中的文本

Aspose.Words 还允许您仅在 Word 文档的页眉/页脚中查找和替换文本。以下是执行此操作的步骤。

  • 创建Document类的实例并将 Word 文档的路径传递给它。
  • 使用Document.getFirstSection().getHeadersFooters()方法获取文档的HeaderFooterCollection。
  • 在HeaderFooter对象中检索特定的页眉/页脚。
  • 使用HeaderFooter.getRange().replace()方法查找和替换文本。
  • 保存更新后的 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产品

点此获取更多Aspose产品信息 或 加入Aspose技术交流群(761297826

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问

在线咨询
联系我们

客服热线
023-68661681

QQ客服

意见反馈


添加微信获专业服务

TOP
在线客服系统
live chat