この記事では、Javaを使用してプログラムでWord(DOC / DOCX)ドキュメントのテキストを検索および置換する方法を示します。ステップバイステップガイドとコードサンプルでは、Word文書内のテキストを検索して置換するさまざまなシナリオについて説明します。
MS Wordは、ドキュメント内のテキストを見つけて置き換える簡単な方法を提供します。テキストの検索と置換の一般的な使用例の1つは、さまざまなエンティティ間で共有される前に、ドキュメント内の機密情報を削除または置換することです。ただし、手動プロセスでは、MS Wordをインストールし、すべてのドキュメントを個別に更新する必要がある場合があります。このような状況では、特にデスクトップまたはWebアプリケーション内に検索機能と置換機能を統合している場合に便利で時間を節約できます。それでは、さまざまなシナリオでJavaを使用してWord文書内のテキストを検索および置換する方法を見てみましょう。
Javaを使用してWordDOC/ DOCXでテキストを検索および置換 Word DOC / DOCXの正規表現パターンに基づいて類似した単語を置き換える Word文書のヘッダー/フッター内のテキストの検索と置換 Word DOC / DOCXでテキストを検索してメタ文字に置き換える Word文書内のテキストを検索して置換するJavaAPI 検索と置換機能を実装するために、Aspose.Words for Javaを使用します。これは、強力で機能が豊富で、Javaプラットフォーム用の使いやすいワードプロセッシングAPIです。次の構成を使用して、JARをダウンロードするか、Mavenベースのアプリケーションにインストールすることができます。
リポジトリ:
AsposeJavaAPI Aspose Java API https://repository.aspose.com/repo/ 依存:
com.aspose aspose-words 20.5 jdk17 Javaを使用してWord文書(DOC / DOCX)のテキストを検索して置換する 入力Wordドキュメント内で「Sad」という単語が見つかる単純な検索と置換のシナリオに取り組むことから始めましょう。この操作を実行する手順は次のとおりです。
Documentクラスのインスタンスを作成し、それにWordドキュメントのパスを渡します。 Document.getRange.replace(string, string, FindReplaceOptions)メソッドを使用してテキストを検索および置換します。 Document.save(String)メソッドを使用してドキュメントを保存します。 次のコードサンプルは、Javaを使用してWordDOCXドキュメント内のテキストを検索して置換する方法を示しています。
// WordDOCXドキュメントを読み込む Document doc = new Document("document.docx"); // ドキュメント内のテキストを検索して置換します doc.getRange().replace("sad", "[replaced]", new FindReplaceOptions(FindReplaceDirection.FORWARD)); // Word文書を保存する doc.save("Find-And-Replace-Text.docx"); 以下は、この記事で使用した入力Wordドキュメントです。
以下は、「悲しい」という単語を見つけて置き換えた後の出力です。
Javaを使用してWordDOC/DOCXで類似した単語を検索して置換する APIをカスタマイズして、類似性に基づいてテキストを検索および置換することもできます。たとえば、「sad」、「mad」、「bad」という単語は、「ad」で終わる同様のパターンに従います。電子メールIDは、そのようなテキストのもう1つの例です。このような場合、正規表現パターンを定義して、特定のパターンを持つすべてのテキストオカレンスを検索して置き換えることができます。これを実現するための手順は次のとおりです。
Documentクラスのインスタンスを作成し、それにWordドキュメントのパスを渡します。 Pattern.compile()メソッドを使用して正規表現パターンを定義し、それをDocument.getRange().replace(パターンパターン、文字列置換、FindReplaceOptionsオプション)メソッドに渡します。 Document.save(String)メソッドを使用して、更新されたドキュメントを保存します。 次のコードサンプルは、Javaを使用して特定のパターンに基づいて類似した単語を見つけて置き換える方法を示しています。この記事では、.NETまたは.NET CoreアプリケーションでC#を使用してWord文書内のテキストを検索および置換するためのさまざまなアプローチについて説明します。
検索と置換は、ドキュメント内の目的のテキストをすばやく見つけて置換するためのMSWordの非常に便利な機能です。長いドキュメントで作業する場合は、より便利で時間を節約できます。何百ものWord文書のテキストを見つけて置き換える必要がある場合、またはこのプロセスを自動化する必要がある場合は、プログラムで実行することを選択します。したがって、この記事では、C#を使用してさまざまなシナリオでプログラムでWord文書内のテキストを検索して置き換える方法を紹介します。この記事を読むと、次のことができるようになります。
C#を使用してWord DOC/DOCXのテキストを検索して置換する Word文書で類似した単語を見つけて置換する 正規表現を使用してテキストを検索して置換する Word文書のヘッダー/フッター内のテキストを見つけて置き換えます Word文書内のテキストを検索してメタ文字に置き換えます Word文書内のテキストを検索して置換するためのC#ライブラリ まず、Visual Studioで新しいC#プロジェクト(コンソール、ASP.NETなど)を作成し、NuGetパッケージマネージャーまたはパッケージマネージャーコンソールを介してAspose.Words for .NETをインストールします。
NuGetパッケージマネージャーを介したインストール パッケージマネージャーコンソールを介したインストール PM> Install-Package Aspose.Words Aspose.Words for .NETをインストールしたら、次のWordドキュメントのテキストの検索と置換を開始しましょう。
C#でWord文書のテキストを検索して置換する 以下は、Aspose.Words for .NETを使用してWord文書内の特定のテキストを検索して置換する手順です。
Documentクラスのインスタンスを作成し、Wordドキュメントのパスで初期化します。 Document.Range.Replace(string, string, FindReplaceOptions)メソッドを使用してテキストを検索および置換します。 Document.Save(string)メソッドを使用してドキュメントを保存します。 FindReplaceOptionsクラスは、検索/置換操作をカスタマイズするためのさまざまなオプションを提供します。次のコードサンプルは、C#を使用してWordドキュメント内の特定の単語または文字列を検索して置換する方法を示しています。
// Wordのdocxドキュメントを読み込む Document doc = new Document("document.docx"); // ドキュメント内のテキストを検索して置換します doc.Range.Replace("sad", "[replaced]", new FindReplaceOptions(FindReplaceDirection.Forward)); // Word文書を保存する doc.Save("Find-And-Replace-Text.docx"); 出力 C#を使用してWord文書内の類似した単語を検索して置換する APIをカスタマイズして、類似した単語を検索し、それらを特定の単語に置き換えることもできます。たとえば、「sad」と「mad」という単語を見つけて、それらを1つの単語に置き換えることができます。次のコードサンプルは、C#を使用してWordドキュメント内の類似した単語を検索して置換する方法を示しています。
// Wordのdocxドキュメントを読み込む Document doc = new Document("document.docx"); FindReplaceOptions options = new FindReplaceOptions(); options.MatchCase = true; // ドキュメント内のテキストを検索して置換します doc.Range.Replace(new Regex("[B|S|M]ad"), "[replaced]", options); // Word文書を保存する doc.