IRONSOFTWAREHOME

如何在 C# 中删除 DOCX 中的文本#

Ahmad Sohail
Ahmad Sohail
Updated: 2026年6月29日

IronWord 提供多种用 C# 从 Word 文档中删除文本的方法,包括删除整个段落、特定文本运行,以及在删除前按内容查找文本,所有这些都能保持文档结构和格式的完整性。

快速入门:从DOCX中移除文本
  1. 通过NuGet包管理器安装IronWord
  2. 使用WordDocument加载您的DOCX文件
  3. 通过索引访问段落或文本运行
  4. 在目标元素上调用Remove() 5.保存修改后的文档
  1. 1Install IronWord with NuGet Package Manager

    PM > Install-Package IronWord

  2. 2复制并运行这段代码。

    using IronWord;
    
    // Load document
    WordDocument doc = new WordDocument("document.docx");
    
    // Remove second paragraph
    doc.Paragraphs[1].Remove();
    
    // Save changes
    doc.SaveAs("document_modified.docx");
    C#
  3. 3部署到您的生产环境中进行测试

    通过免费试用立即在您的项目中开始使用IronWord
    arrow pointer

如何从 Word 文档中删除整个段落?

要从Word文档中删除段落,请通过Paragraphs集合使用其索引位置访问它。 本示例删除了索引 1 中的段落,删除了其所有内容和格式。 文件结构在删除后会自动调整,后续段落会向上移动以填补空白。

在删除段落时,请记住索引是以零为基础的。 第一段为索引 0,第二段为索引 1,以此类推。 Remove()方法彻底消除文档结构中的段落元素,包括所有文本运行、格式和段落内的任何嵌入内容,如图像或超链接。

using IronWord;

// Load a DOCX document
WordDocument doc = new WordDocument("text_document.docx");

// Remove the second paragraph
doc.Paragraphs[1].Remove();

// Export the file
doc.SaveAs("text_document_modified.docx");

删除前的文档是什么样的?

Word 文档,文本删除前有三个彩色段落,显示格式功能区和段落工具

删除后文档结构如何变化?

显示三个彩色 Lorem ipsum 段落的 Word 文档,演示删除段落前的文本格式

删除操作应保持文档的整体格式和结构。 其余段落保留原有颜色和格式属性。 这也是使用 IronWord 删除方法的主要优势--既能保持周围内容的完整性,又能干净利落地删除目标元素。

如何删除段落中的特定格式化文本?

一个段落可以包含多个文本行,其中每个文本行代表具有一致格式属性(如粗体、斜体或颜色)的文本。 理解文本运行对于精确处理内容至关重要。 每当段落中的格式发生变化时,就会开始新的文本运行。 例如,如果一个句子中有一个词是加粗的,那么通常会有三个文本流:加粗词之前的文本、加粗词本身以及加粗词之后的文本。

要删除段落内的特定格式化内容,请访问Texts集合,并按索引定位所需的文本运行。 此示例删除了第一段中的第三段文本(索引 2),而保留了其他内容。 通过这种细粒度控制,您可以保留段落结构,同时只删除特定格式的段落。

using IronWord;

// Load a DOCX document
WordDocument doc = new WordDocument("sample.docx");

// Remove the first paragraph's third textrun
doc.Paragraphs[0].Texts[2].Remove();

// Export the file
doc.SaveAs("sample_after_textrun_removal.docx");

在使用文本运行时,请记住删除文本运行不会影响周围运行的格式。 每个文本运行都保持独立的格式属性。 这样就可以在不破坏剩余文本视觉外观的情况下,对特定格式的内容进行外科手术式的删除。

删除前文本运行会发生什么情况?

显示文本运行删除操作前带有下划线格式的文本的 Word 文档

移除文本运行如何影响段落格式?

Word 文档显示特定文本运行删除后带有下划线文本的格式化段落

如图所示,移除特定文本运行后,其余内容的格式仍保持完整。 下划线文本和其他格式属性保持不变,以展示文本运行操作的精确性。

如何根据内容而非位置查找和删除文本?

FindText方法基于文本匹配而非位置动态定位和删除内容。 这对于删除文档中的无效文本、占位符或特定内容而不知道其确切位置尤其有用。 该方法返回匹配的文本元素,如果未找到则返回null,允许在调用Remove之前通过null检查安全删除。

在处理需要删除占位符文本的模板文档或清理已知错误模式的文档时,这种方法非常有价值。 FindText方法默认执行区分大小写的搜索,确保目标内容的精确匹配。

using IronWord;

// Load the document
WordDocument doc = new WordDocument("sample.docx");

// Find and remove erroneous text
var textToRemove = doc.FindText("ERRONEOUS TEXT IS HERE.");
textToRemove?.Remove();

// Save the cleaned document
doc.SaveAs("sample_cleaned.docx");

上面的代码中null条件运算符(?.)对于安全执行至关重要。 如果未找到文本,NullReferenceException。 在处理目标文本可能并不总是存在的文档时,这种模式会使您的代码更加稳健。

FindText如何处理多个出现?

在使用查找和替换之前,Word 文档显示 Lorem ipsum 文本,并用粗体显示 "错误文本在此"。

FindText 如何处理多次出现?

在对 Lorem ipsum 内容进行查找和删除操作后,显示下划线文本部分的 Word 文档

使用FindText时,请注意它返回匹配文本的第一次出现。 如果您需要删除整个文档中出现的所有特定文本,请执行一个循环,继续搜索和删除,直到找不到匹配的文本为止。 这种迭代方法可确保对整个文档进行全面的文本删除。

查找和删除功能保留了删除文本之外的文档格式和结构。 段落分隔、周围文本格式和文档样式保持不变,这样既能保持文档的一致性,又能删除不需要的内容。

常见问题解答

如何用 C# 从 Word 文档中删除整个段落?

using IronWord,您可以通过使用段落索引位置访问段落集合并调用 Remove() 方法来删除段落。例如,doc.Partagraph[1].Remove() 删除第二段(索引 1)。删除后,文档结构会自动调整,后续段落会向上移动以填补空缺。

删除文本后,文档结构会发生什么变化?

IronWord 在删除文本时保持了文档的整体格式和结构。剩余的段落保留其原有的颜色和格式属性,文档会自动重新排版以消除空白。这样,在干净利落地删除目标元素的同时,还能确保周围内容的完整性。

我能否删除段落中的特定格式化文本,而不是整个段落?

是的,IronWord 允许您删除段落中的特定文本行。由于段落可以包含多个文本行(每个文本行代表格式一致的文本),因此您可以在保留段落其余内容和结构的同时,针对并删除单个文本行。

什么是 Word 文档中的文本运行?

在 IronWord 中,文本流代表一个段落中具有粗体、斜体或颜色等一致格式属性的部分文本。每当段落中的格式发生变化时,就会开始一个新的文本流。在处理 Word 文档时,理解文本流对于精确操作内容至关重要。

从 Word 文档中删除文本后如何保存更改?

using IronWord 删除文本后,您可以调用 SaveAs() 方法保存修改后的文档。例如,doc.SaveAs("document_modified.docx") 保存了应用了所有删除更改的更新文档。这将创建一个新文件,同时保留原始文档。

删除段落是否也会删除图片或超链接等嵌入内容?

是的,当您对一个段落使用 IronWord 的 Remove() 方法时,它会从文档结构中完全删除该段落元素,包括该段落中的所有文本运行、格式化以及任何嵌入内容(如图片或超链接)。

Is it possible to remove text by content without knowing its position in the document?

Yes, using IronWord's `FindText` method, you can dynamically remove text by its content without needing to know its exact position in the document.

What happens to a document's structure when a paragraph is removed using IronWord?

When a paragraph is removed using IronWord, the document structure adjusts so that subsequent paragraphs shift up to fill the gap, maintaining the integrity of the document layout.

Can IronWord selectively remove formatted segments within a paragraph?

Absolutely, IronWord provides granular control by allowing you to target and remove specific formatted text runs within a paragraph, without disrupting the overall paragraph formatting.

Why is using IronWord advantageous for text removal in DOCX files?

IronWord is advantageous for text removal in DOCX files because it provides precise control over text content, maintains document formatting, and allows dynamic content manipulation, ensuring professionalism and consistency.

Ahmad Sohail
全栈开发者

Ahmad 是一名全栈开发人员,拥有扎实的 C#、Python 和 Web 技术基础。他对构建可扩展的软件解决方案深感兴趣,并喜欢探索设计和功能在实际应用中如何结合。

...
阅读更多

准备开始了吗?

Nuget Downloads 56,401版本:2026.9刚刚发布

立即获取您的免费30 天试用密钥
无需信用卡或创建账户
C# 用于 PDF 的 NuGet 库
通过 NuGet 安装

版本: 2026.9

PM > Install-Package IronWord
nuget.org/packages/IronWord/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索“IronWord”
  3. 选择包并安装
C# PDF DLL
下载 DLL

版本: 2026.9

  1. 下载并解压IronWord到你的解决方案目录中的~/Libs等位置
  2. 在Visual Studio解决方案资源管理器中,右键单击引用。选择浏览,“IronWord.dll”

许可证价格从$999

Key in blue circle

立即获取免费的 30 天试用版密钥

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
预约您的免费现场演示
Booking Badge

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户