Może być wiele powodów, dla których należy zastąpić słowo lub frazę w dokumencie. Niezależnie od tego, czy chcesz usunąć poufną zawartość przed publicznym udostępnieniem dokumentu, czy też chcesz ukryć/usunąć wszystkie prywatne informacje, takie jak identyfikatory e-mail lub numery ubezpieczenia społecznego, musisz zredagować treść dokumentu. Ten artykuł zawiera wskazówki, jak programowo redagować dokumenty programu Word w aplikacjach platformy .NET przy użyciu języka C#. Oddzielnie omówimy, jak redagować, ukrywając tekst oraz jak znajdować i zastępować tekst, słowa lub frazy przy użyciu różnych technik.

Poniżej zostaną omówione następujące tematy:

Interfejs API redakcji platformy .NET do zastępowania tekstu

GroupDocs.Redaction for .NET to API do redagowania dokumentów, które umożliwia znajdowanie, a następnie zastępowanie zamierzonych danych z dokumentów o różnych formatach plików. Wraz z redagowaniem tekstu i rasteryzacją interfejs API udostępnia funkcje redagowania metadanych, adnotacji, arkuszy kalkulacyjnych i obrazów. Obsługiwane formaty plików dokumentów programu Word, arkuszy kalkulacyjnych, prezentacji, obrazów i dokumentów PDF są dostępne w dokumentacji.

Możesz pobrać pliki DLL lub instalator MSI z sekcji pobierania lub zainstalować interfejs API w swojej aplikacji .NET za pośrednictwem [NuGet](https://www.nuget.org /packages/groupdocs.redaction).

PM> Install-Package GroupDocs.Redaction

W tym procesie nie ma potrzeby instalowania pakietu MS Office ani żadnego innego oprogramowania innych firm. Zacznijmy teraz i przyjrzyjmy się różnym sposobom radzenia sobie ze znajdowaniem i zastępowaniem tekstu w dokumentach. Poniżej znajduje się zrzut ekranu dokumentu programu Word, który jest używany w przykładach do demonstracji. Te same metody będą działać dla innych formatów dokumentów bez żadnych zmian w kodzie.

Znajdź i zamień słowa lub frazy w dokumencie programu Word przy użyciu języka C#

W poniższym kroku wyjaśniono, jak znaleźć dowolne słowo/frazę w dokumencie programu Word, a następnie zamienić wszystkie wystąpienia innym tekstem w aplikacji C#.

  • Załaduj dokument programu Word (DOC/DOCX) przy użyciu klasy Redactor.
  • Znajdź dokładną frazę lub słowo, używając klasy ExactPhraseRedaction z [ReplacementOptions](https://apireference.groupdocs.com /redaction/net/groupdocs.redaction.redactions/replacementoptions).
  • Użyj metody Redactor Zastosuj, aby zastosować redakcję.
  • Zapisz zmiany za pomocą metody Save.

Poniższy kod znajduje i zastępuje wyraz w języku C#. Mówiąc dokładniej, zastępuje wszystkie wystąpienia „John Doe” ciągiem „[ocenzurowane]”.

// Znajdź dokładną frazę i zastąp ją innym tekstem za pomocą C#
using (Redactor redactor = new Redactor(@"path/document.docx"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
  redactor.Save();
}

Dane wyjściowe kodu są następujące.

Wyszukiwanie i zastępowanie z uwzględnieniem wielkości liter w plikach programu Word przy użyciu języka C#

W podobny sposób można dokonać redagowania dokumentu programu Word z uwzględnieniem wielkości liter, znajdując dokładne słowo i zastępując je dowolnym innym. Poniższy kod zastępuje istnienie słowa „John Doe” w pliku DOCX przy użyciu języka C#, ale tym razem w wyszukiwaniu będzie rozróżniana wielkość liter.

// Znajdź dokładną frazę (z uwzględnieniem wielkości liter) i zastąp ją innym tekstem za pomocą C#
using (Redactor redactor = new Redactor(@"path/document.docx"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
  redactor.Save();
}

Dane wyjściowe kodu są następujące.

Zastąp tekst w plikach Word za pomocą wyrażeń regularnych (RegEx) za pomocą C#

Aby znaleźć i zamienić dowolny wzór tekstu w plikach Word (DOC, DOCX), możesz użyć wyrażeń regularnych. Poniższe kroki umożliwiają redagowanie dokumentu programu Word za pomocą RegEx przy użyciu języka C#.

  • Załaduj dokument programu Word przy użyciu klasy Redactor.
  • Znajdź dopasowanie wyrażenia regularnego, używając klasy RegexRedaction z [ReplacementOptions](https://apireference.groupdocs.com/redaction/ net/groupdocs.redaction.redactions/replacementoptions).
  • Użyj metody Apply, aby zastąpić wszystkie pasujące teksty wyrażeń regularnych.
  • Użyj metody Save, aby pobrać zredagowany plik programu Word.

Poniższy kod pokazuje, jak znaleźć wzorzec tekstu w pliku programu Word przy użyciu RegEx, a następnie zamienić/ukryć go innym tekstem przy użyciu języka C#.

// Znajdź tekst za pomocą wyrażenia regularnego i zastąp go innym tekstem za pomocą C#
using (Redactor redactor = new Redactor(@"path/document.docx"))
{
  redactor.Apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
  redactor.Save();
}

Dane wyjściowe powyższego kodu są następujące.

Ukryj poufny tekst w dokumentach programu Word za pomocą kolorowego pola przy użyciu języka C#

Jeśli nie chcesz zastępować swoich prywatnych treści, ale po prostu chcesz je zakryć, interfejs API pozwala ukryć te treści, rysując nad nimi ramkę. Poniższy kod umieszcza czarny prostokąt nad zamierzonym tekstem w celu zaciemnienia tekstu przy użyciu języka C#.

// Znajdź tekst i ukryj go, rysując nad nim prostokąt za pomocą C#
using (Redactor redactor = new Redactor(@"path/document.docx"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(System.Drawing.Color.Black)));
  redactor.Save();
}

Dane wyjściowe powyższego kodu są następujące.

Uzyskaj bezpłatną licencję API

Możesz uzyskać bezpłatną tymczasową licencję, aby korzystać z API bez ograniczeń ewaluacyjnych.

Wniosek

Podsumowując, nauczyłeś się znajdować tekst w plikach Word (DOC, DOCX) przy użyciu różnych technik i zastępować wyniki na różne sposoby. Mówiąc dokładniej, omówiliśmy, jak znaleźć tekst, słowo lub frazę, nawet jeśli jest to wyszukiwanie z uwzględnieniem wielkości liter lub użycie wyrażenia regularnego w języku C#. Później zastąpiliśmy wyniki wyszukiwania albo innym tekstem, albo umieszczając kolorowe prostokątne pole nad wyszukiwanym tekstem.

Więcej informacji na temat interfejsu API można znaleźć w dokumentacji. W przypadku pytań skontaktuj się z nami za pośrednictwem forum.

Zobacz też