Как удалить определенный текст из документа DOCX с помощью C# и .NET

  1. Добавьте SautinSoft.Document из Nuget.
  2. Загрузите документ DOCX.
  3. Найдите определенный текст.
  4. Удалите все совпадения в обратном порядке.

Этот пример кода показывает, как удалить все совпадения текста "Document".

Полный код

using System;
using System.Linq;
using SautinSoft.Document;

namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            // Get your free 100-day key here:   
            // https://sautinsoft.com/start-for-free/

            DeleteText();
        }
        /// <summary>
        /// Delete a specific text from DOCX document.
        /// </summary>
        /// <remarks>
        /// Details: https://sautinsoft.com/products/document/help/net/developer-guide/delete-text-from-docx-document-net-csharp-vb.php
        /// </remarks>
        static void DeleteText()
        {
            string filePath = @"..\..\..\example.docx";
            string fileResult = @"Result.pdf";
            string textToDelete = "document";
            DocumentCore dc = DocumentCore.Load(filePath);

            int countDel = 0;
            foreach (ContentRange cr in dc.Content.Find(textToDelete).Reverse())
            {
                cr.Delete();
                countDel++;
            }
            Console.WriteLine("The text: \"" + textToDelete + "\" - was deleted " + countDel.ToString() + " time(s).");
            Console.ReadKey();

            dc.Save(fileResult);
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(filePath) { UseShellExecute = true });
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(fileResult) { UseShellExecute = true });

        }
    }
}

Download

Imports System
Imports System.IO
Imports System.Linq
Imports SautinSoft.Document

Module Sample
    Sub Main()
        DeleteText()
    End Sub
    ''' Get your free 100-day key here:   
    ''' https://sautinsoft.com/start-for-free/
    ''' <summary>
    ''' Delete a specific text from DOCX document.
    ''' </summary>
    ''' <remarks>
    ''' Details: https://sautinsoft.com/products/document/help/net/developer-guide/delete-text-from-docx-document-net-csharp-vb.php
    ''' </remarks>
    Sub DeleteText()
        Dim filePath As String = "..\..\..\example.docx"
        Dim fileResult As String = "Result.pdf"
        Dim textToDelete As String = "document"
        Dim dc As DocumentCore = DocumentCore.Load(filePath)

        Dim countDel As Integer = 0
        For Each cr As ContentRange In dc.Content.Find(textToDelete).Reverse()
            cr.Delete()
            countDel += 1
        Next cr
        Console.WriteLine("The text: """ & textToDelete & """ - was deleted " & countDel.ToString() & " time(s).")
        Console.ReadKey()

        dc.Save(fileResult)
        System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(filePath) With {.UseShellExecute = True})
        System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(fileResult) With {.UseShellExecute = True})
    End Sub
End Module

Download


Если вам нужен пример кода или у вас есть вопрос: напишите нам по адресу support@sautinsoft.ru или спросите в онлайн-чате (правый нижний угол этой страницы) или используйте форму ниже:



Вопросы и предложения всегда приветствуются!

Мы разрабатываем компоненты .Net с 2002 года. Мы знаем форматы PDF, DOCX, RTF, HTML, XLSX и Images. Если вам нужна помощь в создании, изменении или преобразовании документов в различных форматах, мы можем вам помочь. Мы напишем для вас любой пример кода абсолютно бесплатно.