Najděte a nahraďte text ve Wordu pomocí Python

Poměrně často potřebujete nahradit konkrétní text nebo frázi v dokumentech aplikace Word. MS Word má pro takové případy vestavěnou funkci a požadovaný text můžete nahradit jedním kliknutím. V tomto článku se dozvíte, jak programově najít a nahradit text v dokumentech Word pomocí Python. To může být užitečné, když potřebujete nahradit text ve velkém množství dokumentů. Tuto funkci můžete také vložit do svých aplikací Python a cenzurovat dokumenty Wordu před sdílením.

Knihovna Python pro nahrazení textu v dokumentech aplikace Word

K vyhledání a nahrazení textu v souborech DOCX nebo DOC použijeme Aspose.Words for Python. Jedná se o knihovnu Python s bohatou funkcí, která vám umožňuje bezproblémově vytvářet a manipulovat s dokumenty MS Word. Knihovnu můžete nainstalovat z PyPI pomocí následujícího příkazu pip.

pip install aspose-words

Najděte a nahraďte text v dokumentu Word pomocí Python

Následují kroky k vyhledání a nahrazení textu v dokumentu Word pomocí Python.

  • Načtěte dokument pomocí třídy Document.
  • K nahrazení textu použijte metodu Document.range.replace(string, string, aw.replacing.FindReplaceOptions(aw.replacing.FindReplaceDirection.FORWARD)).
  • Uložte aktualizovaný dokument pomocí metody Document.save(string).

Následující ukázka kódu ukazuje, jak nahradit konkrétní text v dokumentu DOCX pomocí Python.

import aspose.words as aw

# načíst dokument aplikace Word
doc = aw.Document("document.docx")

# nahradit text
doc.range.replace("sad", "[replaced]", aw.replacing.FindReplaceOptions(aw.replacing.FindReplaceDirection.FORWARD))

# uložit upravený dokument
doc.save("updated.docx")

Následuje vstupní dokument aplikace Word, který jsme použili v tomto příkladu.

Následuje aktualizovaný dokument aplikace Word po nahrazení textu.

Nahraďte text v dokumentu Word pomocí Python

Aktualizovaný dokument aplikace Word po nahrazení textu

Nahraďte text v dokumentech aplikace Word pomocí regulárních výrazů

V určitých případech můžete chtít nahradit text, který odpovídá určitému vzoru. Můžete například chtít vynechat e-mailové adresy zapsané v dokumentech před jejich sdílením online. V takových případech můžete zadat regulární výraz, který nahradí výskyty shodného textu. Následují kroky k nahrazení textu v dokumentech aplikace Word na základě regulárního výrazu.

  • Načtěte dokument pomocí třídy Document.
  • Vytvořte objekt třídy FindReplaceOptions.
  • Nahraďte text na základě regulárního výrazu pomocí metody Document.range.replaceregex(řetězec, řetězec, FindReplaceOptions).
  • Uložte aktualizovaný dokument pomocí metody Document.save(string).

Následující ukázka kódu ukazuje, jak nahradit text v dokumentu aplikace Word pomocí regulárního výrazu.

import aspose.words as aw

# načíst dokument aplikace Word
doc = aw.Document("document.docx")

# nahradit text pomocí RegEx
options = aw.replacing.FindReplaceOptions()
doc.range.replace_regex("[s|m]ad", "bad", options)

# uložit upravený dokument
doc.save("updated.docx")

Následuje snímek obrazovky dokumentu aplikace Word po nahrazení textu pomocí RegEx.

Nahraďte text ve Wordu pomocí Regex

Python: Nahraďte text v dokumentech Word pomocí metaznaků

V některých případech může být část textu složena z různých odstavců, oddílů nebo stránek. Chcete-li nahradit takové fráze, musíte použít následující metaznaky.

  • &p pro zalomení odstavce
  • &b pro konec sekce
  • &m pro přerušení stránky
  • &l pro zalomení řádku

Následující ukázka kódu ukazuje, jak pomocí metaznaků najít a nahradit text v dokumentech aplikace Word.

import aspose.words as aw

# načíst dokument aplikace Word
doc = aw.Document("document.docx")

# vytvořit možnosti
findReplaceOptions = aw.replacing.FindReplaceOptions()
findReplaceOptions.apply_paragraph_format.alignment = aw.ParagraphAlignment.CENTER

# zdvojnásobte každý konec odstavce za slovem "sekce", přidejte druh podtržení a nastavte jej na střed.
count = doc.range.replace("section&p", "section&p----------------------&p", findReplaceOptions)

# vložte konec oddílu místo vlastní textové značky.
count = doc.range.replace("insert-section", "&b", findReplaceOptions)

# uložit upravený dokument
doc.save("updated.docx")

Přečtěte si více o hledání a nahrazování textu v dokumentech Word pomocí Python.

Získejte bezplatnou licenci API

Můžete získat dočasnou licenci, abyste mohli používat Aspose.Words for Python bez omezení hodnocení.

Závěr

V tomto článku jste se naučili, jak najít a nahradit text v dokumentech Word pomocí Python. Kromě toho jste také viděli, jak používat RegEx a metaznaky k nahrazení textu v dokumentech aplikace Word. Kromě toho můžete prozkoumat další funkce nabízené Aspose.Words for Python pomocí dokumentace. Své dotazy můžete také zveřejňovat na našem fóru.

Viz také

Informace: Aspose nedávno vyvinula bezplatnou online službu Text to GIF, která vám umožňuje animovat texty nebo generovat GIFy z jednoduchých textů.