如何在带有 xmlns 属性的 xml 中使用 xpath 获取特定的嵌套元素?

沙欣贾巴尔

我有一个 XML,我想使用 XPath 获取特定的嵌套元素,但它不起作用。也许这就是标签包含 xmlns 属性的原因。有什么建议么?

<DataPDU xmlns="urn:cma:stp:xsd:stp.1.0">
<Body>
    <AppHdr xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
        <test1>
            <test2>
                <test3>
                    <test4>text</test4>
                </test3>
            </test2>
        </test1>
        <test5>
            <test6>
                <test7>
                    <test8>dummy text</test8>
                </test7>
            </test6>
        </test5>
        <test9>test</test9>
        <test10>p1212121</test10>
        <test11>147</test11>
        <test12>lorem</test12>
    </AppHdr>
    <Document xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.008.001.08">
        <test13>
                <test14>
                        <test15>asap</test15>
                </test14>
        </test13>
    </Document>
</Body>

班杜克

是的,您必须定义命名空间。看看这个——

如何获取具有命名空间的 XML 元素

或者您可以将 xml 作为字符串传递并使用正则表达式删除这些属性 -

Regex.Replace(xmlString, @"(\sxmlns="".+"")", "")

根据您的用例,您可以使用其中之一。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

当最外面的元素具有xmlns属性时,如何在骆驼中使用xpath?

如何使用XMLNS属性转换元素

使用XPath获取属性的XML属性值

使用XPATH访问具有多个属性的XML元素的值

如何在Java中使用XPath获取属性值?

如何在Java中使用xpath从特定属性中选择所有属性值

使用 java 和 Xpath 获取 xml 的所有属性

如何在Go中使用XPath从XML获取值

在PHP中使用XPath替换XML属性

在PHP中使用xpath过滤XML属性

仅在PHP中使用XPath属性XML

使用Groovy在SoapUI中使用Xpath查询在XML节点中使用xsi获取属性值

如何在 C# 中使用 XPathEvaluate 方法通过 Xpath 获取节点元素属性的值?

删除xml中的xmlns属性,以获取简单的纯xml节点

如何从xml和Java中的根元素中删除xmlns属性

如何更改Castor映射以从XML输出的元素中删除“ xmlns:xsi”和“ xsi:type”属性?

如何使用xpath查找特定类型的所有xml元素?

使用python(具有xmlns属性)的XML解析不起作用

使用XPath获取具有以特定字符串开头的属性名称的元素的列表

向XML元素添加其他xmlns:xsi属性

存在xmlns属性时如何使用XSLT?

WPF 如何在具有 XML 元素或属性的文本框上设置正确的数据绑定 (XPath)?

什么是XML属性xmlns:app?

使用xslt从xml中删除xmlns soap属性

如何在Python中使用XPath限制特定xml元素的开始和结束标记之间的元素提取范围?

如何在Java X路径中获取带有名称空间的嵌套xml的属性

如何在C#中解析具有多个xmlns属性的xml?

使用带有vtd-xml Java的XPath更改xml属性值

如何使用XPath根据条件获取XML containsg默认名称空间中的特定元素