使用正则表达式c#替换文档中的文本字段
Posted
技术标签:
【中文标题】使用正则表达式c#替换文档中的文本字段【英文标题】:Replacing a text field in a document using regular expression c# 【发布时间】:2019-03-30 13:11:04 【问题描述】:我有一个简单的 c# 代码,可以在 word 文档中替换名字、中间名、姓氏等字段读取文档文件并使用正则表达式替换字段
例如: 我 [FirstName] [LastName],来自 [city] 的 [Fathers Name] 和 [Mothers Name] 的儿子。地址 [First Name],[Address Line 1]
现在将有八个这样的模板,如果没有给出中间名,则需要替换详细信息 FirstName(ex: John) 代替 [First Name] LastName(ex: Doe) 代替 [LastName]然后删除 [MiddleName] 并创建新的 doc 文件。这些字段可能会重复 n 次,如果我使用查找和替换,有人可以给我一个示例,说明如何执行此操作,或者是否需要正则表达式(每个模板中至少有 20 个这样的字段)代码我说的对吗?
提前致谢
【问题讨论】:
如果您为查找和替换创建方法。只需调用您不会重复代码的方法。 我有一个简单的 c# 代码......使用它。 我们没有机会回答,您没有显示任何您尝试过的代码。显示代码、输入示例和预期输出。 @Cid 正如我在帖子中提到的,系统没有安装 MS Office 【参考方案1】:您可能想看看Open XML SDK。 可以直接访问docx的底层XML,不需要安装Office。
This 示例也可能对您有所帮助。
【讨论】:
这很有帮助。谢谢。以上是关于使用正则表达式c#替换文档中的文本字段的主要内容,如果未能解决你的问题,请参考以下文章
如何使用正则表达式匹配从 xml 文件中搜索和替换包含占位符标记的文本。 VB.net 或 C#