Find and Replace Text in Documents using .NET API
Tags: csharp, dotnet, webdev, api
Published: 2019-09-20 11:11:50

One of the popular uses cases related to the documents is **finding and replacing the text** programmatically. There could be multiple cases when you need to replace a word or phrase in the document. For example, you want to censor the content before sharing the document publically or you want to hide/remove all the email IDs or Social Security Numbers provided in the document before putting it online.

So in this article, I am going to target this use case and will show you how you could easily **find and replace** your desired text in **documents** programmatically using **C#**. For this, I will use [**GroupDocs.Redaction for .NET**](https://products.groupdocs.com/redaction/net) **API **which provides multiple ways to hide or replace text in the popular formats of **MS Word**, **Excel**, **PowerPoint**, and **PDF** documents.

So you don’t need MS Office, PDF editor or any other third party software in this scenario. Let’s now begin and have a look at different approaches to deal with finding and replacing text in the documents. The following is the screenshot of a Word document that I have used in the examples for demonstration. The same methods will work for other document formats I have mentioned above without any change in the code.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/j40ljze1qhb00q41c1fk.png)

#### **Find and replace a word or phrase**

This is how you can replace a single word or phrase in the document.
```csharp
using GroupDocs.Redaction;
using GroupDocs.Redaction.Redactions;
...

using (Document doc = Redactor.Load("sample.docx"))
{
    doc.RedactWith(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
    doc.Save();
}
```

_Output_

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/n5zri0fjg01laueu7qg0.png)

#### **Find and replace case-sensitive word or phrase**

In case you want to replace text considering its case sensitivity, use the following code.
```csharp
using GroupDocs.Redaction;
using GroupDocs.Redaction.Redactions;
...

using (Document doc = Redactor.Load("sample.docx"))
{
    doc.RedactWith(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
    doc.Save();
}
```

_Output_

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/87wfoz65kk3ajd1oqcrb.png)

#### **Find and replace text using regular expressions (regex)**

If you need to replace the text occurrences that are following a particular pattern, for example SS#, you can do it using the regular expressions.
```csharp
using GroupDocs.Redaction;
using GroupDocs.Redaction.Redactions;
...

using (Document doc = Redactor.Load("sample.docx"))
{
    // Regex to match a number having 2 digits, space, 2 digits, space, 6 digits
    doc.RedactWith(new RegexRedaction(@"\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
    doc.Save();
}
```

_Output_

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/rp5tfr8pf3cdp0l19tpg.png)

#### **Find and replace the text with colored box**

You can also replace your desired text with a colored box.
```csharp
using GroupDocs.Redaction;
using GroupDocs.Redaction.Redactions;
...

using (Document doc = Redactor.Load("sample.docx"))
{
    doc.RedactWith(new ExactPhraseRedaction("John Doe", true, new ReplacementOptions(System.Drawing.Color.Black)));
    doc.Save();
}
```

_Output_

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/jg3l2on7bru2qqrku6hb.png)


Cheers!

### See Also
[Extract Text from PDF C#](https://blog.aspose.com/2020/05/16/extract-text-from-pdf-csharp-vb-net/)
[Extract Text from PowerPoint C#](https://blog.aspose.com/2021/03/06/extract-text-from-powerpoint-pptx-using-csharp/)
[Find and Replace Text in Excel C#](https://blog.aspose.com/2020/02/15/find-and-replace-text-in-excel-xls-xlsx-in-csharp-net/)
[Find and Replace Text in Word C#](https://blog.aspose.com/2020/01/24/find-and-replace-text-in-word-documents-in-csharp-net/)
[Find and Replace Text in PDF C#](https://blog.aspose.com/2020/12/22/find-and-replace-text-in-pdf-using-csharp/)