使用C#从xsd文件中删除特定标记(<;xs:any>;)
本文关键字:lt xs gt any xsd 文件 删除 使用 | 更新日期: 2023-09-27 17:59:42
我是XSD的新手。我有一个XSD文件,以下内容在XSD文件中出现了几次。
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbound">
<xs:annotation>
<xs:documentation> blah blah blah</xs:documentation>
</xs:annotation>
</xs:any>
我必须使用C#从XSD文件中删除这个部分,其中有这些"any"标记。我试过使用系统。Xml。架构但失败bcoz此代码段可以在任何级别。然后我尝试使用regex,它以"xs:any"开头,以"/xs:any"结尾,并带有角度制动器,但未能写出确切的模式。请帮我解决问题。它可能是系统。Xml。Schema或Regex或任何其他方式。
提前谢谢。
您可以使用LINQ to XML实现以下功能:
XNamespace xs = "http://www.w3.org/2001/XMLSchema";
var doc = XDocument.Load(your xsd file);
doc.Descendants(xs + "any").Remove();