Artikel ini membahas berbagai pendekatan untuk menemukan dan mengganti teks di dokumen Word menggunakan C# di aplikasi .NET atau .NET Core.

Temukan dan Ganti adalah fitur MS Word yang cukup berguna untuk menemukan dan mengganti teks yang diinginkan dengan cepat dalam dokumen. Menjadi lebih praktis dan hemat waktu saat Anda bekerja dengan dokumen yang lebih panjang. Jika Anda perlu mencari dan mengganti teks dalam ratusan dokumen Word atau Anda perlu mengotomatiskan proses ini, Anda pasti akan memilih untuk melakukannya secara terprogram. Jadi dalam artikel ini, saya akan menunjukkan cara menemukan dan mengganti teks dalam dokumen Word secara terprogram dalam berbagai skenario menggunakan C#. Setelah Anda membaca artikel ini, Anda akan dapat:

Perpustakaan C# untuk Menemukan dan Mengganti Teks dalam Dokumen Word

Pertama-tama, buat proyek C# baru (Konsol, ASP.NET, dll.) di Visual Studio dan instal Aspose.Words for .NET melalui NuGet Package Manager atau Package Manager Console.

Menginstal melalui NuGet Package Manager

Menemukan dan mengganti teks di Word DOC

Menginstal melalui Package Manager Console

PM> Install-Package Aspose.Words

Setelah kita menginstal Aspose.Words for .NET, sekarang mari mulai mencari dan mengganti teks dalam dokumen Word berikut.

c # temukan dan ganti teks dalam dokumen kata

Temukan dan Ganti Teks di Dokumen Word di C#

Berikut adalah langkah-langkah untuk menemukan dan mengganti teks tertentu dalam dokumen Word menggunakan Aspose.Words for .NET.

Kelas FindReplaceOptions menyediakan berbagai opsi untuk menyesuaikan operasi temukan/ganti. Contoh kode berikut menunjukkan cara menemukan dan mengganti kata atau string tertentu dalam dokumen Word menggunakan C#.

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

Keluaran

temukan teks dalam dokumen kata menggunakan c #

Temukan dan Ganti Kata Serupa di Dokumen Word menggunakan C#

Anda juga dapat menyesuaikan API untuk menemukan kata yang mirip dan menggantinya dengan kata tertentu. Misalnya, Anda dapat menemukan kata “sedih” dan “gila” dan menggantinya dengan satu kata. Contoh kode berikut menunjukkan cara menemukan dan mengganti kata yang mirip di dokumen Word menggunakan C#.

// Muat dokumen docx Word
Document doc = new Document("document.docx");
FindReplaceOptions options = new FindReplaceOptions();
options.MatchCase = true; 
// Temukan dan ganti teks dalam dokumen
doc.Range.Replace(new Regex("[B|S|M]ad"), "[replaced]", options);
// Simpan dokumen Word
doc.Save("Find-And-Replace-Multiple-Words.docx");

Keluaran

c # ganti teks dalam file docx

Temukan dan Ganti Teks menggunakan Regex di C#

Mungkin ada kasus ketika Anda ingin mencari dan mengganti teks yang muncul dalam pola tertentu. Misalnya, Anda perlu menyembunyikan/mengganti semua ID email dalam dokumen Word. Dalam kasus tersebut, Anda dapat membuat ekspresi reguler untuk ID email dan meneruskannya ke metode Document.Range.Replace(Regex, string, FindReplaceOptions).

Contoh kode berikut menunjukkan cara menemukan dan mengganti teks berdasarkan pola di dokumen Word.

// Muat dokumen docx Word
Document doc = new Document("document.docx");
FindReplaceOptions options = new FindReplaceOptions();
options.FindWholeWordsOnly = true; 
// Setel ekspresi reguler untuk ID email 
Regex EmailRegex = new Regex(@"[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?");
// Temukan dan ganti teks dalam dokumen
doc.Range.Replace(EmailRegex, "[replaced]", options);
// Simpan dokumen Word
doc.Save("Find-And-Replace-Text-Using-Regex.docx");

Keluaran

cara mengganti teks di dokumen word

Anda juga dapat menemukan dan mengganti teks di bagian header atau footer dokumen Word menggunakan kelas HeaderFooter. Metode HeaderFooter.Range.Replace(string, string, FindReplaceOptions) digunakan untuk tujuan ini. Contoh kode berikut menunjukkan cara mengganti teks di header/footer dokumen Word di C#.

// Muat dokumen Word
Document doc = new Document("document.docx");
// Akses header/footer dari dokumen Word
HeaderFooterCollection headersFooters = doc.FirstSection.HeadersFooters;
HeaderFooter footer = headersFooters[HeaderFooterType.FooterPrimary];
// Tetapkan opsi
FindReplaceOptions options = new FindReplaceOptions
{
	MatchCase = false,
	FindWholeWordsOnly = false
};
// Ganti teks di footer dokumen Word
footer.Range.Replace("This is footer of the document.", "Copyright (C) 2020 by Aspose Pty Ltd.", options);
// Simpan dokumen Word
doc.Save("Find-And-Replace-Text-in-Footer.docx");

Keluaran

Dokumen Word Menemukan dan Mengganti Teks di C#.NET

Temukan dan Ganti Teks dengan Meta-Karakter dalam Dokumen Word menggunakan C#

Mungkin ada skenario di mana teks atau frasa tertentu terdiri dari beberapa paragraf, bagian, atau halaman. Dalam kasus seperti itu, metode temukan dan ganti sederhana tidak akan bekerja secara efektif dan kita harus menangani hentian paragraf, hentian bagian, atau hentian halaman. Untuk ini, Aspose.Words memungkinkan Anda menggunakan karakter meta berikut dalam string pencarian atau string pengganti:

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

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

// Muat dokumen docx Word
Document doc = new Document("document.docx"); 
// Tetapkan pilihan 
FindReplaceOptions options = new FindReplaceOptions
{
	MatchCase = false,
	FindWholeWordsOnly = false
};
// Ganti teks dengan jeda paragraf
doc.Range.Replace("First paragraph ends.&pSecond paragraph starts.", "[replaced]", options);
// Simpan dokumen Word
doc.Save("Find-And-Replace-Text-Paragraph-Break.docx");

Keluaran

temukan dan ganti teks menggunakan ekspresi reguler C#

Kesimpulan

Artikel ini membahas beberapa cara berguna untuk menemukan dan mengganti teks dalam dokumen Word berdasarkan kata, frasa, dan pola regex yang cocok atau mirip secara terprogram. Fitur-fitur ini tidak hanya mengotomatiskan proses penggantian teks tetapi juga menghemat banyak waktu dan upaya yang diperlukan dalam operasi pencarian dan penggantian manual dalam dokumen Word. Anda dapat mempelajari lebih lanjut tentang Perpustakaan Kata Aspose menggunakan dokumentasi.

Artikel Terkait

Tip: Anda mungkin tertarik dengan Text to GIF Converter gratis yang memungkinkan Anda membuat animasi dari teks.