
Microsoft Word документи са стъпка за създаване и споделяне на текстово съдържание. Ако разработвате C# приложения, които взаимодействат с тези документи, може да се наложи да се извлича текст от тях. Това може да бъде за цели като анализ на текст или извличане на специфични секции на документ, за да се състави в нов. В този блог пост, ние ще се потопите в методите за извличане на текст от Word документи в C#.
Таблица на съдържанието
- C# Библиотека за извличане на текст
- Разбиране на извличане на текст в Word документи
- Стъпка по стъпка ръководство за извличане на текст от Word документ- Извличане на текст между параграфи
- Извличане на текст между различни видове нодове
- Извличане на текст въз основа на стилове
C# Библиотека за извличане на текст
Апсос.Words за .NET е мощна и удобна за използване библиотека, предназначена за работа с документи на Word. Тя осигурява цялостен набор от функции, включително извличане на текст, създаване на документи, манипулация и конверсия. С Aspose.Words за .NET, разработчиците могат ефективно да управляват различни аспекти на документите на word, което го прави безценно инструмент за вашите нужди за развитие.
За да започнем, Изтеглете библиотеката или да го инсталирате директно от NuGet Използвайте следната команда в конзолата за управление на пакетите:
PM> Install-Package Aspose.Words
Word документи
Документът MS Word съдържа различни елементи като параграфи, таблици и изображения. Следователно, изискванията за извличане на текст могат да се различават в зависимост от конкретния случай на употреба. Може да е необходимо да извлечете текст между параметри, букви, коментари и много други.
Word е представен като възел. Следователно, за ефективно обработване на документ, ще трябва да работите с тези възели. Нека разгледаме как да се извлече текст от документи на Word.
Word документ {#Извличане на текст от Word-a-Word-Document}
В този раздел ще въведем C# текст екстрактор за документи на Word. Работният поток за текстово извличане включва следните стъпки:
- Определете възелите, които трябва да бъдат включени в процеса на екстракция.
- Екстрактиране на съдържанието между посочените възли (включително или изключване на началните и края на възлите).
- Използвайте клонираните извлечени възли, за да създадете нов документ на Word, съдържащ извличаното съдържание.
Нека създадем метод, наречен ExtractContent, който ще приеме възли и други параметри, за да извърши текстовото извличане.
StartNode и EndNote: Те определят началните и крайните точки за извличане на съдържание. Те могат да бъдат блок-ниво (напр. Параграф, Таблица) или възели на нивото на линия (н.е., Run , FieldStarts или BookmarkStars).- За полета изберете съответния FieldStart обект.
За букмейкъри използвайте бутоните BookmarkStart и BookmarkEnd.
За коментари използвайте възелите CommentRangeStart и Contact.
IsInclusive: Този параметър определя дали маркерите са включени в екстракцията.Ако се задават фалшиви и се предоставят същите или последователни възли, ще бъде върнат празен списък.
Ето пълното изпълнение на метода ExtractContent за извличане на съдържание между посочените възли:
Освен това някои методи за подпомагане се изискват от метода ExtractContent, за да се улесни работата по извличане на текст:
Сега, когато имаме готови нашите методи, можем да продължим да извличаме текст от документ на Word.
Извличане на текст между параграфи на документ за дума
За да извлечете съдържание между два параграфа в документ на Word DOCX, следвайте следните стъпки:
- Изтеглете документа на Word, като използвате класата Документ.
- Получете препратки към началните и завършващите параграфи, като използвате метода Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH, int, boolean).
- Изпратете метода ExtractContent(startPara, endPar, True), за да извлечете възелите в обект.
- Използвайте метода за подпомагане GenerateDocument(Dokument, extractedNodes), за да създадете документ с извлеченото съдържание.
- Съхранявайте новия документ, като използвате метода Document.Save(string).
Ето шаблон от код, който показва как да се извлече текст между параграфи 7 и 11 в документ на Word:
Text-Extraction-between-DifferentTypes-of-Nodes}
Можете също така да извличате съдържание между различни видове възли. например, нека извлечем съдържанието между параграф и таблица и да го съхраняваме в нов документ на Word.
- Изтеглете документа на Word, като използвате класата Документ.
- Получете препратки към началните и крайните възли, като използвате метода Document.FirstSection.Body.GetChild(NodeType, int, boolean).
- Изпратете ExtractContent(startPara, endPar, True), за да извлечете възелите в обект.
- Използвайте метода за подпомагане GenerateDocument(Dokument, extractedNodes), за да създадете документ с извлеченото съдържание.
- Съхранявайте новия документ с помощта на Document.Save(string).
Ето кодовата проба за извличане на текст между параграф и таблица в C#:
Извличане на текст въз основа на стилове
За да екстрактирате съдържание между параграфи въз основа на стилове, следвайте тези стъпки.За тази демонстрация, ние ще екструктираме съдържанието между първия “Заглавие 1” и първият “заглавието 3” в Word документ:
- Изтеглете документа на Word, като използвате класата Документ.
- Извлечете параграфи в обект, като използвате метода за подпомагане ParagraphsByStyleName(Document, “Heading 1”).
- Извлечете параграфи в друг обект, като използвате ParagraphsByStyleName(Document, “Heading 3].
- Изпратете ExtractContent(startPara, end Para, True) с първите елементи от двата параграфа.
- Използвайте метода за подпомагане GenerateDocument(Dokument, extractedNodes), за да създадете документ с извлеченото съдържание.
- Съхранявайте новия документ с помощта на Document.Save(string).
Ето един код за извличане на съдържание между параграфи въз основа на стилове:
Прочетете повече за екстракцията на текст
Разгледайте допълнителни сценарии за извличане на текст от Word документи чрез Тази документация.
Word
Можете да получите A Безплатна временна лиценза Изтегляне на текст без ограничения за оценка.
заключение
Aspose.Words за .NET е универсална библиотека, която улеснява процеса на извличане на текст от документи на Word в C#. С неговите обширни функции и user-friendly API, можете ефективно да работите с документи на Word и да автоматизирате различни сценарии за извличане на текст. Независимо дали разработвате приложения, които изискват обработка на документи на Word или просто извличане на текст, Aspose.Words за .NET.
За да разгледате повече функции на Aspose.Words за .NET, проверете Документация. Ако имате някакви въпроси, се чувствайте свободни да стигнете до нас. Форумът.
Вижте също
Тип: Може да искате да проверите Aspose PowerPoint към Word Конвертор, който демонстрира популярния процес на конвертиране на презентации в Word документи.
More in this category
- Конвертирайте Word DOC/DOCX в PDF в C# .NET Aspose.Words' Document Converter Plugin
- Word документи (.NET, C#) и четене на баркод от Word (.NET)
- Извличане на изображения от Word документи в C# автоматична обработка на изображения
- Автоматични отчети с C# Mail Merge, Aspose.Words' Mail Merge Plugin
- Намиране и замяна на текст в Word документи с помощта на C# автоматично редактиране на Word