Supplier Anda telah diakuisisi, dan “ACME Corp” kini menjadi “Globex Ltd” di setiap kontrak, jadwal, anggaran, dan deck slide yang menyebutkannya. Dengan server GroupDocs.Editor MCP yang berjalan secara lokal, Claude Desktop, Cursor, atau Copilot melakukannya secara batch: untuk setiap file dalam folder ia memanggil replace_text, mempertahankan format, melaporkan berapa banyak kemunculan yang diubah, dan tidak menulis apa pun untuk file yang tidak pernah menyebut nama lama. Tidak ada yang diunggah, dan tidak ada file asli yang ditimpa:

Ganti ACME Corp menjadi Globex Ltd di setiap dokumen dalam folder contracts, pertahankan format, dan beri saya hitungan per file.

Versi langkah demi langkah ada di dokumentasi: Cara menemukan dan mengganti teks di seluruh folder dokumen tanpa merusak format.

Mengapa ini pekerjaan untuk alat dan bukan untuk model?

Karena hasilnya harus dapat diperiksa. Empat puluh dokumen terlalu banyak untuk dibandingkan secara visual, dan model yang “memperbarui semua kontrak” tidak memberi Anda apa pun untuk diperiksa. Alat temukan‑dan‑ganti memberi Anda angka per file. Angka‑angka tersebut menjadi jejak audit: Anda tahu file mana yang berubah, berapa banyak, dan mana yang tidak perlu diubah.

Alat ini juga harus membosankan dengan cara yang tepat. Nama pihak yang dicetak tebal tetap tebal, tabel biaya mempertahankan grid‑nya, judul tetap dengan gaya mereka. Model tidak pernah mengetik ulang dokumen: mesin membukanya, mengganti kata‑kata, dan menulis salinan. Satu hal yang perlu diingat pada server 26.10.0: salinan itu ditulis dari model penyuntingan HTML mesin, dan footer Word tidak muncul. Kontrak yang menyebutkan pemasok di footernya memerlukan putaran HTML berhalaman; FAQ mencantumkan apa yang dipertahankan oleh dokumen Word.

Apa yang dilihat agen

Diambil dari GroupDocs.Editor.Mcp 26.10.0 terhadap satu set sintetis kecil: sebuah perjanjian layanan, NDA, surat sambutan, anggaran tiga lembar, dan deck tinjauan tiga slide.

-> replace_text {"file":{"filePath":"contracts/msa-northwind.docx"},
     "find":"ACME Corp","replace":"Globex Ltd","wholeWord":true}
<- Replaced 6 occurrence(s) of 'ACME Corp' in 'msa-northwind.docx'
   Saved to: …/msa-northwind_edited.docx

-> replace_text {"file":{"filePath":"contracts/nda-northwind.docx"}, ...}
<- Replaced 1 occurrence(s) of 'ACME Corp' in 'nda-northwind.docx'

-> replace_text {"file":{"filePath":"contracts/welcome-letter.docx"}, ...}
<- Text replacement found no matches for 'ACME Corp' in
   'welcome-letter.docx'. No file was written.

-> replace_text {"file":{"filePath":"budget.xlsx"}, ..., "worksheet":1}
<- Replaced 1 occurrence(s) of 'ACME Corp' in worksheet 1 of 3 of
   'budget.xlsx'

-> replace_text {"file":{"filePath":"review.pptx"}, ..., "slide":1}
<- Replaced 1 occurrence(s) of 'ACME Corp' in slide 1 of 3 of
   'review.pptx'

Laporan agen menulis sendiri: enam di perjanjian, satu di NDA, tidak ada di surat sambutan, satu di ringkasan anggaran, satu di slide pertama.

Loopnya

contracts/ + budget.xlsx + review.pptx
   |
   +-- for each file:
   |      replace_text {"find":"ACME Corp","replace":"Globex Ltd",
   |                    "wholeWord":true}   (+ "worksheet"/"slide")
   |         -> "Replaced N occurrence(s) ..."  -> <name>_edited.<ext>
   |         -> "found no matches ... No file was written."
   |
   '-- report: file -> count; files with 0 listed separately

Dua kebiasaan membuat loop ini dapat diandalkan. Gunakan wholeWord: true untuk nama, sehingga “ACME Corp” tidak cocok di dalam “ACME Corporation Holdings”. Dan minta agen untuk mencantumkan file‑file dengan nol kecocokan, karena nol pada file yang Anda harapkan berubah adalah satu‑satunya hal yang layak diperiksa kembali.

Memeriksa batch sebelum mengganti apa pun

Salinan yang telah diedit berada di samping file asli sampai Anda memutuskan lain, dan itulah saatnya memeriksa. Tiga pemeriksaan murah menangkap hampir semua masalah. Bandingkan hitungan per file dengan yang Anda harapkan: sebuah perjanjian yang menyebut pemasok di setiap halaman tidak seharusnya melaporkan satu kemunculan. Jangan mengandalkan menjalankan penggantian yang sama lagi: frasa yang terpecah di antara format akan terlewat juga pada percobaan kedua, dan “found no matches” akan tampak seperti semua bersih. Minta agen menjalankan extract_html pada setiap salinan yang diedit; pratinjau teks polosnya menggabungkan rentang format, sehingga “ACME Corp” yang tersisa muncul di sana. Ejaan variasi (“Acme Corp.” dengan titik, “ACME Corporation”) layak mendapat putaran tersendiri dengan matchCase: false atau ekspresi reguler. Dan buka satu file yang diedit dari setiap tipe—kontrak, workbook, dan deck—untuk memastikan format, serta footer, tetap ada. Hanya setelah itu pindahkan file _edited ke atas file asli, atau biarkan sistem dokumen Anda memberi versi.

Pola, huruf besar/kecil, dan format dalam satu panggilan

Penggantian nama adalah kasus umum, tetapi alat yang sama mencakup seluruh keluarga “menjadikan kata konsisten”. Dalam satu run pengujian yang sama:

-> replace_text {"file":{"filePath":"contracts/nda-northwind.docx"},
     "find":"v2\\.3\\b","replace":"v2.4","regex":true,
     "outputName":"nda-northwind-v2.4.docx"}
<- Replaced 1 occurrence(s) of 'v2\.3\b' in 'nda-northwind.docx'

-> replace_text {"file":{"filePath":"contracts/nda-northwind.docx"},
     "find":"acme corp","replace":"Globex Ltd","matchCase":false,
     "format":"pdf"}
<- Replaced 1 occurrence(s) of 'acme corp' in 'nda-northwind.docx'
   Saved to: …/nda-northwind_edited.pdf

regex: true menerima ekspresi reguler .NET, yang merupakan cara melakukan peningkatan versi atau perubahan format tanggal melalui folder. matchCase: false menangkap kapitalisasi yang tidak konsisten. format: "pdf" mengedit dan mengonversi dalam satu langkah, untuk salinan yang akan dikirim ke sisi lain.

Catatan sampingan untuk agen pemrograman

Pola yang sama bekerja di repositori. Catatan rilis dalam DOCX dan spesifikasi dalam XLSX tidak terlihat oleh sed; Claude Code dengan server ini dapat menaikkan string versi di keduanya sebagai bagian dari tugas rilis. Letakkan aturan dalam instruksi proyek sehingga agen menggunakan alat alih‑alih mencoba mengekstrak file Office:

To change wording in .docx/.xlsx/.pptx/.pdf files in this repo, use the
groupdocs-editor MCP server's replace_text (wholeWord for names, regex for
versions). Report the count per file. Never rewrite an Office file by hand.

Batasan yang jujur

  • Pencocokan terjadi dalam satu rentang format. Pada perjanjian kami, “ACME Corp” ketujuh, dengan “ACME” dalam italic, tidak diganti, dan hitungan enam menampilkannya. Frasa yang terpecah di antara gaya memerlukan putaran HTML.
  • Setiap hasil ditempatkan di akar folder output sebagai <name>_edited.<ext>, bahkan ketika file asli berada di subfolder. Tidak ada yang ditimpa: nama yang sudah dipakai mendapat nomor (msa-northwind_edited (1).docx), jadi berikan outputName bila nama dapat berbenturan.
  • Pada server 26.10.0 salinan dokumen Word yang diedit kehilangan footernya, dan kontrol konten diratakan menjadi teks polos. Periksa dokumen yang membawa nama lama di footer.
  • Spreadsheet dan presentasi diedit satu worksheet atau slide per panggilan. Dalam mode evaluasi hanya dua pertama yang dapat diedit, dan server memberi tahu: “Evaluation mode edits only the first 2 slides of a presentation; slide 3 is beyond them.”
  • Mode evaluasi juga menambahkan baris banner pada setiap output, dan PDF yang lebih panjang dari dua halaman ditolak.

FAQ

Apakah dapat mengganti teks di Word, Excel, dan PowerPoint dalam satu batch?
Ya. Agen memanggil alat yang sama per file dan menambahkan worksheet atau slide untuk workbook dan deck.

Bagaimana saya tahu file mana yang berubah?
Setiap panggilan mengembalikan hitungan, dan file tanpa kecocokan tidak ditulis sama sekali. Minta agen menyediakan tabel per file.

Apakah file asli akan ditimpa?
Tidak. Setiap edit menulis file baru; file asli tetap seperti semula sampai Anda menggantinya sendiri.

Selami Lebih Dalam