
Microsoft Word-документы являются стаблом для создания и обмена текстовым контентом. Если вы разрабатываете приложения C#, которые взаимодействуют с этими документами, вы можете найти себе необходимость извлечь текст из них. Это может быть для таких целей, как анализ текста или вывлечение конкретных разделов документа для сборки в новый.
Таблица контента
- C# Библиотека для экстракции текста
- Понимание экстракции текста в Word-документах
- Step-by-Step Guide to Экстракт текста из Word Document- Извлечение текста между параграфами
- Экстракция текста между различными типами узлов
- Извлечение текста на основе стилей
C# Библиотека для экстракции текста
Aspose.Words для .NET Это мощная и удобная библиотека, предназначенная для работы с документами Word. Она обеспечивает комплекс функций, включая текстовое извлечение, создание документов, манипуляцию и конверсию. С Aspose.Words для .NET, разработчики могут эффективно управлять различными аспектами документов Word, делая его бесценным инструментом для ваших потребностей развития.
Чтобы начать, Скачать библиотеку или установить его непосредственно из NuGet Используйте следующую команду в консоле управления пакетами:
PM> Install-Package Aspose.Words
Понимание экстракции текста в Word-документах
Документ MS Word содержит различные элементы, такие как параграфы, таблицы и изображения. Следовательно, требования к текстовому выведению могут отличаться в зависимости от конкретного использования. Вам может потребоваться вывести текст между параграфами, букмекеры, комментарии и многое другое.
Каждый элемент в документе Word представлен в виде узла. Поэтому, чтобы эффективно обрабатывать документ, вам нужно будет работать с этими узлами. Давайте рассмотрим, как извлечь текст из документов Word в разных сценариях.
Step-by-Step Guide to Экстрактировать текст из Word Document {#Экстрактировать текст из Word-a-Word-Document}
В этом разделе мы реализуем экстрактор текста C# для документов Word. Рабочий поток для экстракции текста будет включать следующие шаги:
- Определите узлы, которые должны быть включены в процесс экстракции.
- Экстракт содержимого между указанными узлами (включая или исключая начальные и окончательные узлы).
- Используйте клонированные извлеченные узлы, чтобы создать новый документ Word, содержащий извлеченный контент.
Давайте создаем метод под названием ExtractContent, который принимает узлы и другие параметры для выполнения текстового извлечения.
StartNode и EndNode: Они определяют точки начала и конца для экстракции контента. Они могут быть блоковым уровнем (например, Параграф, Таблица) или узлами в линии (например, Run, FieldStart, BookmarkStart).- Для полетов перейдите соответствующий объект FieldStart.
Для книжных знаков используйте узлы BookmarkStart и BookmarkEnd.
Для комментариев используйте узлы CommentRangeStart и CommentRangeEnd.
IsInclusive: Этот параметр определяет, включены ли маркеры в экстракцию.Если установлены фальшивые и предоставляются те же или последовательные узлы, то возвращается пустый список.
Вот полная реализация метода ExtractContent для извлечения контента между указанными узлами:
Кроме того, некоторые вспомогательные методы требуются методом ExtractContent для облегчения работы извлечения текста:
Теперь, когда у нас готовые методы, мы можем продолжать выводить текст из документа Word.
Экстракт текста между параграфами слова документа {#Экстракт-текст-между параграфами}
Чтобы извлечь контент между двумя параграфами в документе Word DOCX, выполните следующие шаги:
- Загрузите документ Word с помощью класса Документ.
- Получите ссылки на стартовые и окончательные параграфы с помощью метода Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH, int, boolean).
- Назовите метод ExtractContent(startPara, endPara, True), чтобы вывести узлы в объект.
- Используйте метод GenerateDocument(Document, extractedNodes) для создания документа с извлеченным контентом.
- Сохраните новый документ с помощью метода Document.Save(string).
Вот шаблон кода, демонстрирующий, как извлечь текст между параграфами 7 и 11 в документе Word:
Экстракция текста между разными типами узлов
Вы также можете экстрактировать контент между различными типами узлов. Например, давайте экстрактируем контент между параграфом и таблицей и сохраним его в новом документе Word.
- Загрузите документ Word с помощью класса Документ.
- Получите ссылки на начальные и окончательные узлы с помощью метода Document.FirstSection.Body.GetChild(NodeType, int, boolean).
- Назовите ExtractContent(startPara, endPara, True), чтобы вывести узлы в объект.
- Используйте метод GenerateDocument(Document, extractedNodes) для создания документа с извлеченным контентом.
- Сохраните новый документ, используя Document.Save(string).
Вот шаблон кода для извлечения текста между параграфом и таблицей в C#:
Экстракция текста на основе стилей {#Экстракция-текст-между параграфами-на основе стилей}
Для экстракции контента между параграфами, основанными на стилях, следуйте следующим шагам. Для этой демонстрации, мы экстрактируем контент между первым “Название 1” и первым “Название 3” в документе Word:
- Загрузите документ Word с помощью класса Документ.
- Экстрактируйте параграфы в объект с помощью метода помощи ParagraphsByStyleName(Документ, “Название 1”).
- Экстрактируйте параграфы в другой объект, используя ParagraphsByStyleName(Документ, “Название”).
- Назовите ExtractContent(startPara, endPara, True) с первыми элементами из обоих параграфов.
- Используйте метод GenerateDocument(Document, extractedNodes) для создания документа с извлеченным контентом.
- Сохраните новый документ, используя Document.Save(string).
Вот шаблон кода для извлечения контента между параграфами на основе стилей:
Читайте больше об экстракции текста
Исследуйте дополнительные сценарии для извлечения текста из Word-документов через Эта документационная статья.
Получите бесплатную библиотеку текстовых экстракторов Word
Вы можете получить A Бесплатная временная лицензия Выводить текст без ограничений оценки.
Заключение
Aspose.Words для .NET является универсальной библиотекой, которая упрощает процесс экстракции текста из Word-документов в C#. С его обширными функциями и удобной для пользователя 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#