Extract Text from MS Word Documents in C#

Microsoft Word dokumenty jsou štítek pro vytváření a sdílení textového obsahu. Pokud jste vyvíjet aplikace C#, které interagují s těmito doklady, možná budete muset extrahovat text z nich. To by mohlo být pro účely, jako je analýza textu nebo extrakce specifických sekcí dokumentu, aby se sestavil do nového.

Tabulka obsahů

C# Knihovna pro textové extrakce

Aspose.Words pro .NET je silná a uživatelsky přívětivá knihovna navržená pro práci s dokumenty Word. Poskytuje komplexní sadu funkcí, včetně textové extrakce, tvorby dokumentů, manipulace a konverze. S Aspose.Words pro .NET, vývojáři mohou efektivně spravovat různé aspekty Dokumentů Word, což je neocenitelný nástroj pro vaše rozvojové potřeby.

abychom začali, Stáhněte si knihovnu Nebo je instalovat přímo z NuGet Použijte následující příkaz v konzoli Package Manager:

PM> Install-Package Aspose.Words

Pochopení textové extrakce ve slovních dokumentech

Dokument MS Word obsahuje různé prvky, jako jsou odstavce, tabulky a obrázky. V důsledku toho se požadavky na textové extrakce mohou lišit v závislosti na konkrétním používání případu. Možná budete muset extrahovat text mezi odstavci, poznámky, komentáře a dal.

Každý prvek v dokumentu Word je reprezentován jako uzl. Proto, abyste efektivně zpracovali dokument, budete muset pracovat s těmito uzlami. Podívejme se, jak extrahovat text z dokumentů Word v různých scénářích.

Krok za krokem průvodce k extrahování textu z dokumentu Word

V tomto oddílu budeme implementovat textový extraktor C# pro dokumenty Word. Pracovní tok pro textový extrakci bude zahrnovat následující kroky:

  • Definujte uzly, které mají být zahrnuty do procesu extrakce.
  • Odstranit obsah mezi určenými uzly (včetně nebo vyloučení počátečních a koncích uzly).
  • Použijte klonované extrahované uzly, abyste vytvořili nový Word dokument obsahující extrahovaný obsah.

Vytvoříme metodu s názvem ExtractContent, která přijme uzly a další parametry k provedení textové extrakce:

  • StartNode a EndNode: Tyto definují počátek a konce bodů pro extrakci obsahu. Mohou být blokové úrovně (např. Pododstavec, Tabela) nebo inline úrovně uzly (např. Run, FieldStart, BookmarkStart).- Pro pole přejděte do odpovídajícího FieldStart objektu.

  • Pro poznámky, použijte BookmarkStart a BookmarkEnd uzly.

  • Pro komentáře použijte nůžky CommentRangeStart a CommentRangeEnd.

  • IsInclusive: Tento parametr určuje, zda jsou markery zahrnuty do extrakce.Pokud jsou nastaveny na falešné a stejné nebo následné uzly jsou poskytnuty, vrátí se prázdný seznam.

Zde je kompletní implementace metody ExtractContent k extrahování obsahu mezi specifikovanými uzly:

Kromě toho jsou některé pomocné metody vyžadovány metodou ExtractContent, aby se usnadnila práce na extrahování textu:

Nyní, když máme naše metody připravené, můžeme pokračovat v extrahování textu z dokumentu Word.

Využití textu mezi odstavci slovního dokumentu {#Využití textu mezi odstavci}

Chcete-li extrahovat obsah mezi dvěma odstavci v dokumentu Word DOCX, postupujte podle těchto krok:

  • Přihlaste dokument Word pomocí třídy Dokument.
  • Získejte odkazy na začátek a konec odstavců pomocí metody Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH, int, boolean.
  • Zavolejte metodu ExtractContent(startPara, endPara, True) k extrahování uzlin do objektu.
  • Použijte metodu pomoci GenerateDocument(Dokument, extractedNodes) k vytvoření dokumentu s extrahovaným obsahem.
  • Shromažďujte nový dokument pomocí metody Document.Save(string.

Zde je vzorek kódu, který ukazuje, jak extrahovat text mezi odstavci 7 a 11 v dokumentu Word:

Text mezi různými typy node

Můžete také extrahovat obsah mezi různými typy uzlin. Například extrahujeme obsah mezi odstavcem a tabulkou a ukládáme ho do nového dokumentu Word:

  • Přihlaste dokument Word pomocí třídy Dokument.
  • Získejte odkazy na výchozí a končí uzly pomocí metody Document.FirstSection.Body.GetChild(NodeType, int, boolean.
  • Volejte ExtractContent(startPara, endPara, True) k extrahování uzlin do objektu.
  • Použijte metodu pomoci GenerateDocument(Dokument, extractedNodes) k vytvoření dokumentu s extrahovaným obsahem.
  • Uložte nový dokument pomocí Document.Save(string).

Zde je vzorek kódu pro extrahování textu mezi odstavcem a tabulkou v C#:

Extraktní text založený na stylech {#Extraktní text-mezi odstavci-založený na stylech}

Chcete-li extrahovat obsah mezi odstavci založenými na stylech, postupujte podle těchto kroků. pro tuto demonstraci, budeme extrahovat obsah mezi prvním “Hlava 1” a prvním “Hlava 3” v Word dokumentu:

  • Přihlaste dokument Word pomocí třídy Dokument.
  • Extrakt odstavců do objektu pomocí metody pomoci ParagraphsByStyleName(Dokument, “Hlava 1.
  • Odstranit odstavce do jiného objektu pomocí ParagraphsByStyleName(Dokument, “Hlavn”).
  • Volejte ExtractContent(startPara, endPara, True) s prvními prvky z obou odstavc.
  • Použijte metodu pomoci GenerateDocument(Dokument, extractedNodes) k vytvoření dokumentu s extrahovaným obsahem.
  • Uložte nový dokument pomocí Document.Save(string).

Zde je vzorek kódu pro extrahování obsahu mezi odstavci na základě styl:

Přečtěte si více o textové extrakci

Prozkoumejte další scénáře pro extrahování textu z dokumentů Word prostřednictvím Tento dokumentární článek.

Získejte knihovnu Free Word Text Extractor {#Získejte zdarma API-License}

Můžete získat A Zdarma dočasná licence Využití textu bez omezení hodnocení.

závěr

Aspose.Words pro .NET je všestranná knihovna, která zjednodušuje proces extrakce textu z dokumentů Word v C#. S jeho rozsáhlými funkcemi a uživatelsky přívětivým API můžete efektivně pracovat s dokumenty Word a automatizovat různé scénáře extrakce textu. Ať už vyvíjí aplikace, které vyžadují zpracování dokumentů Word nebo jednoduše extrakci textu, Aspose.Words pro .NET je nezbytným nástrojem pro vývojáře.

Chcete-li prozkoumat více funkcí Aspose.Words pro .NET, zkontrolujte Dokumentace. Pokud máte jakékoliv dotazy, cítit se svobodně dostat prostřednictvím našeho Fórum.

Vidět také

Tip: Možná budete chtít zkontrolovat Aspose PowerPoint ke slovu Konvertor, který ukazuje populární proces konverze prezentací na Word dokumenty.

More in this category