使用 GroupDocs.Redaction .NET 進行敏感資訊遮蔽 – 查找器管理與突顯

在文件中管理與突顯文字可能相當具挑戰性,尤其是處理敏感資訊時。透過 GroupDocs.Redaction .NET 強大的查找器管理與突顯功能,您可以有效遮蔽敏感資訊。

本指南將逐步說明從設定 SDK、加入、移除與刷新查找器,到突顯已找到的字詞,使其在審閱時更為顯眼。

快速解答

  • 什麼是「遮蔽敏感資訊」? 從文件中移除或隱蔽機密資料(例如社會安全號碼、姓名),使其能安全共享。
  • 哪個函式庫可協助自動化文件審查? GroupDocs.Redaction .NET 提供內建查找器,可自動定位並遮蔽資料。
  • 我需要授權嗎? 是,必須擁有開發或正式授權;亦提供試用金鑰供評估使用。
  • 在遮蔽時能同時突顯文字嗎? 當然可以——突顯已找到的字詞讓審閱者確認將被遮蔽的內容。
  • 支援哪些 .NET 版本? 完全支援 .NET Framework 4.6+ 與 .NET Core/5/6+。

什麼是「遮蔽敏感資訊」?

遮蔽敏感資訊是指以程式方式在檔案內定位機密資料,並將其移除或套用視覺遮罩,使資料無法被讀取。此程序對於合規、隱私與安全文件共享至關重要。

為何使用 GroupDocs.Redaction 自動化文件審查?

自動化文件審查可節省大量手動時間,減少人為錯誤,並確保在大量文件集上保持一致的合規性。透過查找器,您可以掃描信用卡號、日期或自訂詞彙等模式,然後一次性套用遮蔽或突顯。

前置條件

  • .NET Framework 4.6+ 或 .NET Core/5/6 已安裝。
  • Visual Studio(任何近期版本)用於開發。
  • 具備基本的 C# 知識及面向物件概念的熟悉度。

設定 GroupDocs.Redaction for .NET

將函式庫加入專案,使用以下任一指令:

dotnet add package GroupDocs.Redaction
Install-Package GroupDocs.Redaction

您也可以在 NuGet 套件管理員 UI 中搜尋 GroupDocs.Redaction,並安裝最新的穩定版。

若需取得授權,請前往 GroupDocs Redaction Purchase,下載後依照啟用步驟完成授權。

以下為初始化遮蔽器的最小範例:

using GroupDocs.Redaction;

// Basic initialization of the redactor with a document path
RedactorSettings settings = new RedactorSettings();
Redactor redactor = new Redactor("your-document-path", settings);

實作指南

以下我們將實作分成多個邏輯區段,直接對應您將使用的核心功能,以遮蔽敏感資訊與在文件中突顯文字為目標。

字元查找器管理

管理字元查找器可讓您在執行期間控制要搜尋的模式。

新增查找器

public void Add(IFinder finder)
{
    // Adds a new finder to the list of active finders.
    finders.Add(finder);
}

目的:註冊 IFinder 實作,使遮蔽器能定位特定字元或字串。

移除查找器

public void Remove(IFinder finder)
{
    // Mark a finder for removal.
    toRemove.Add(finder);
}

目的:在安全修改集合之前延遲移除,以防止列舉錯誤。

片語與詞彙初始化

片語與詞彙查找器讓您搜尋多字詞表達或單一關鍵字。

初始化詞彙與片語

public SuperFinder(string[] terms, string[][] phrases)
{
    // Initialize term finders and add them to the list.
    if (terms != null)
    {
        foreach (var term in terms)
        {
            var finder = new SeparateWordFinder(this, term);
            finders.Add(finder);
        }
    }

    // Initialize phrase finders and add them to the list.
    if (phrases != null)
    {
        foreach (var phrase in phrases)
        {
            var finder = new PhraseFirstWordFinder(this, phrase);
            finders.Add(finder);
        }
    }
}

目的:為 redactor 填充簡單的詞彙查找器與更複雜的片語查找器,實現強大的搜尋功能。

查找器刷新

刷新確保每個查找器重新開始,這在新增或移除查找器後尤為重要。

public void Flush()
{
    // Reset each finder's state.
    foreach (var finder in finders)
    {
        finder.Flush();
    }
}

目的:清除快取狀態,使後續搜尋保持準確。

已找到字詞管理

有效處理已找到的字詞可提升效能,特別是在大型文件中。

新增已找到的字詞

public LinkedListNode<FoundWord> AddFoundWord(FoundWord foundWord)
{
    // Add a found word to the list.
    var node = foundWords.AddFirst(foundWord);
    return node;
}

目的:在鏈結串列的頭部插入新的 FoundWord,實現 O(1) 插入。

移除已找到的字詞

public void RemoveFoundWords(List<LinkedListNode<FoundWord>> words)
{
    // Remove specified words from the list.
    foreach (var node in words)
    {
        foundWords.Remove(node);
    }
}

目的:批次移除詞彙,減少迭代開銷。

突顯已找到的字詞

突顯有助於審閱者快速辨識將被遮蔽的內容。

public void HighlightFoundWords()
{
    // Iterate through each found word and highlight it.
    while (foundWords.Count > 0)
    {
        var foundWord = foundWords.First.Value;
        foundWords.RemoveFirst();
        foundWord.Highlight();
    }
}

目的:對每個 FoundWord 套用視覺突顯,然後從處理佇列中移除。

實務應用

  1. 敏感資訊遮蔽 – 自動隱藏法律合約中的個人資料,如姓名、身分證號或信用卡號碼。
  2. 自動化文件審查 – 突顯關鍵條款或詞彙,讓審查者聚焦於高影響區段。
  3. 內容管理系統 – 在出版工作流程中動態管理與突顯內容變更。

效能考量

  • 最小化查找器變動:僅加入必要的查找器;不必要的新增/移除循環會增加負擔。
  • 明智使用 LinkedList:提供 O(1) 的插入/刪除,適合大型結果集。
  • 定期呼叫 Flush():在長時間批次作業中保持記憶體使用可預測。

結論

遵循本指南後,您已掌握如何使用 GroupDocs.Redaction .NET 遮蔽敏感資訊與在文件中突顯文字。一步步設定查找器、管理其生命週期並套用突顯,為建構安全、 自動化的文件處理管線奠定了堅實基礎。

常見問題

Q: 如何安裝 GroupDocs.Redaction?
A: 使用 .NET CLI (dotnet add package GroupDocs.Redaction) 或套件管理員主控台 (Install-Package GroupDocs.Redaction)。

Q: 刷新查找器的目的為何?
A: 刷新會重設內部狀態,確保後續搜尋從乾淨的環境開始,返回準確結果。

Q: 可以在 .NET Core 上使用 GroupDocs.Redaction 嗎?
A: 可以,函式庫同時支援 .NET Framework 與 .NET Core(含 .NET 5/6)。

Q: 如何有效管理多個已找到的字詞?
A: 將它們存於 LinkedList,並使用批次移除方法,以保持操作快速且記憶體友好。

Q: 常見的實務案例有哪些?
A: 用於合規的自動遮蔽、與 CMS 平台整合以動態突顯,及加速法律文件審查等。

資源


最後更新: 2026-04-27
測試版本: GroupDocs.Redaction 5.0(撰寫時的最新版本)
作者: GroupDocs