C# 从xsd文件获取元素类型前缀
我对解析xsd文件相当陌生,目前我必须从下面的元素中获取元素类型的前缀C# 从xsd文件获取元素类型前缀,c#,xml,xsd,C#,Xml,Xsd,我对解析xsd文件相当陌生,目前我必须从下面的元素中获取元素类型的前缀 <xsd:element name="USAddress" type="irs:USAddressType"> <xsd:annotation> <xsd:documentation> <Description>United States Address</Description> <LineNu
<xsd:element name="USAddress"
type="irs:USAddressType">
<xsd:annotation>
<xsd:documentation>
<Description>United States Address</Description>
<LineNumber>Line H(3)</LineNumber>
</xsd:documentation>
</xsd:annotation>
</xsd:element>
如果有什么方法可以得到这个前缀“irs”,那就太好了。下面是我使用的(很抱歉,它是用java编写的)
公共静态字符串findNSQualifier(文档dom){
元素e=dom.getDocumentElement();
字符串regex=“xmlns:([a-z]+)=\”“+XSD\u NS+”\”;
对于(int i=0;i
感谢您的快速回复。但我找到了一个办法。
xmlns:irs="http://www.irs.gov/file"
public static String findNSQualifier(Document dom){
Element e = dom.getDocumentElement();
String regex = "xmlns:([a-z]+)=\"" + XSD_NS + "\"";
for(int i = 0; i < e.getAttributes().getLength(); i++){
Node attr = e.getAttributes().item(i);
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(attr.toString());
if(m.find())
return m.group(1);
}
return null;
}