Pada artikel ini, saya akan mendemonstrasikan cara menemukan dan mengganti teks dalam dokumen Word (DOC/DOCX) secara terprogram menggunakan Java. Panduan langkah demi langkah dan contoh kode akan mencakup berbagai skenario menemukan dan mengganti teks dalam dokumen Word.

Temukan dan ganti teks dalam dokumen Word

MS Word menyediakan cara mudah untuk menemukan dan mengganti teks dalam dokumen. Salah satu kasus penggunaan populer untuk menemukan dan mengganti teks dapat menghapus atau mengganti informasi sensitif di dalam dokumen sebelum dibagikan di antara berbagai entitas. Namun, proses manual mungkin mengharuskan Anda menginstal MS Word dan memperbarui setiap dokumen secara terpisah. Dalam situasi seperti itu, ini akan berguna dan menghemat waktu terutama bila Anda telah mengintegrasikan fitur temukan dan ganti dalam aplikasi desktop atau web Anda. Jadi mari kita mulai dan lihat bagaimana menemukan dan mengganti teks dalam dokumen Word menggunakan Java dalam berbagai skenario.

Java API untuk Menemukan dan Mengganti Teks di Dokumen Word

Untuk mengimplementasikan fitur temukan dan ganti, kami akan menggunakan Aspose.Words for Java yang merupakan API pemrosesan Word yang kuat, kaya fitur, dan mudah digunakan untuk platform Java. Anda dapat mengunduh JAR-nya atau menginstalnya di dalam aplikasi berbasis Maven menggunakan konfigurasi berikut.

Gudang:

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

Ketergantungan:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-words</artifactId>
    <version>20.5</version>
    <classifier>jdk17</classifier>
</dependency>

Temukan dan Ganti Teks dalam Dokumen Word (DOC/DOCX) menggunakan Java

Mari kita mulai dengan membahas skenario pencarian dan penggantian sederhana di mana kita akan menemukan kata “Sedih” di dalam dokumen input Word. Berikut ini adalah langkah-langkah untuk melakukan operasi ini.

Contoh kode berikut menunjukkan cara menemukan dan mengganti teks dalam dokumen Word DOCX menggunakan Java.

// Muat dokumen Word DOCX
Document doc = new Document("document.docx");
// Temukan dan ganti teks dalam dokumen
doc.getRange().replace("sad", "[replaced]", new FindReplaceOptions(FindReplaceDirection.FORWARD));
// Simpan dokumen Word
doc.save("Find-And-Replace-Text.docx");

Di bawah ini adalah dokumen Word masukan yang telah kami gunakan dalam artikel ini.

temukan dan ganti teks di DOCX menggunakan Java

Berikut adalah output setelah mencari dan mengganti kata “sedih”.

menemukan dan mengganti kata

Temukan dan Ganti Kata Serupa di Word DOC/DOCX menggunakan Java

Anda juga dapat menyesuaikan API untuk mencari dan mengganti teks berdasarkan kesamaan. Misalnya, kata “sedih”, “gila”, dan “buruk” mengikuti pola serupa yang diakhiri dengan “iklan”. ID email adalah contoh lain dari teks semacam itu. Dalam kasus seperti itu, Anda dapat menentukan pola regex untuk menemukan dan mengganti semua kemunculan teks yang memiliki pola tertentu. Berikut ini adalah langkah-langkah untuk mencapainya.

Contoh kode berikut menunjukkan cara menemukan dan mengganti kata yang mirip berdasarkan pola tertentu menggunakan Java.

// Muat dokumen Word DOCX
Document doc = new Document("document.docx");
// Temukan dan ganti kata-kata serupa dalam dokumen
FindReplaceOptions options = new FindReplaceOptions();
doc.getRange().replace(Pattern.compile("[B|S|M]ad"), "[replaced]", options);
// Simpan dokumen Word
doc.save("Find-And-Replace-Text.docx");

Berikut screenshot dokumen Word setelah memperbarui kata-kata yang mirip.

temukan dan ganti kata-kata yang mirip menggunakan Java

Aspose.Words juga memungkinkan Anda menemukan dan mengganti teks hanya di header/footer dokumen Word. Berikut ini adalah langkah-langkah untuk melakukan operasi ini.

Contoh kode berikut menunjukkan cara menemukan dan mengganti teks di header/footer dokumen Word menggunakan Java.

// Muat dokumen Word DOCX
Document doc = new Document("document.docx");
// Akses koleksi header footer
HeaderFooterCollection headersFooters = doc.getFirstSection().getHeadersFooters();
HeaderFooter footer = headersFooters.get(HeaderFooterType.FOOTER_PRIMARY);
// Setel opsi temukan dan ganti
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);
// Simpan dokumen Word
doc.save("Find-And-Replace-Text.docx");

Tangkapan layar berikut menunjukkan teks yang diperbarui di bagian bawah dokumen Word.

temukan dan ganti teks di footer

Temukan dan Ganti Teks dengan Meta-Karakter di Word DOCX menggunakan Java

Mungkin ada kasus ketika Anda perlu mencari dan mengganti frasa yang dibagi menjadi beberapa baris atau paragraf. Dalam kasus seperti itu, Anda harus mengurus paragraf, bagian, atau jeda baris. Aspose.Words for Java memudahkan Anda untuk menangani kasus seperti itu dengan cukup mudah. Berikut ini adalah karakter meta yang dapat Anda gunakan untuk jeda yang berbeda:

  • & p: jeda paragraf
  • & b: jeda bagian
  • & m: jeda halaman
  • & l: jeda baris

Contoh kode berikut menunjukkan cara menemukan dan mengganti teks dengan jeda paragraf dalam dokumen Word.

// Muat dokumen Word DOCX
Document doc = new Document("document.docx");
// Tetapkan opsi
FindReplaceOptions options = new FindReplaceOptions();
// Nonaktifkan kasus pencocokan dan temukan seluruh kata saja
options.setMatchCase(false);
options.setFindWholeWordsOnly(false);
// Ganti teks dengan istirahat paragraf
doc.getRange().replace("First paragraph ends.&pSecond paragraph starts.", "[replaced]", options);
// Simpan dokumen Word
doc.save("Find-And-Replace-Text.docx");

Berikut ini adalah tangkapan layar dari dokumen Word keluaran.

temukan dan ganti teks dengan karakter meta

Kesimpulan

Pada artikel ini, Anda telah melihat cara menemukan dan mengganti teks dalam dokumen Word DOC/DOCX secara terprogram menggunakan Java. Berbagai skenario menemukan dan mengganti teks dalam file DOCX MS Word telah diatasi dengan bantuan contoh kode. Anda dapat mempelajari lebih lanjut tentang Aspose.Words for Java dari dokumentasi.

Lihat juga