首页 > 解决方案 > 如何从 OpenXMLRegex 更新 WmlDocument

问题描述

我正在尝试通过

  1. 合并它们和它们OpenXMLPowerTools.DocumentBuilder(需要并输出 WmlDocuments)
  2. 通过删除所有评论OpenXMLRegex.Replace

这些步骤中的每一个都可以独立工作。但是,OpenXMLRegex需要并修改IEnumerable<System.Xml.Linq.XElement>. 将这个可枚举映射回WmlDocument.

您不能设置WmlDocument元素 或MainDocumentPart这里
有一个例子,修改一个. 但是,我找不到将其映射回的方法。DocumentFormat.OpenXml.Packaging.WordProcessingDocumentWmlDocument

WmlDocument RemoveComments(WmlDocument doc)
{
    Regex regex = new Regex(@"/\*([^/\*])*\*/");
    string commentArtifact = "";

    List<XElement> matches = new List<XElement>();
    var docElements = doc.MainDocumentPart.Elements();
    OpenXmlRegex.Replace(docElements, regex, commentArtifact, null);

    //TODO: How to map back to WmlDocument
    return doc;
}

我强烈希望输出修改后的 WmlDocument 以进行一致的进一步处理。

我正在使用 OpenXmlPowerTools 版本 4.5.3.2

标签: c#openxmlpower-tools-for-xml

解决方案


推荐阅读