gpt4 book ai didi

xml - 查找所有属性与模式匹配的节点

转载 作者:行者123 更新时间:2023-12-03 17:36:10 25 4
gpt4 key购买 nike

我有一个XML

<mic_root state="mismatch">
<RepoTrade state="mismatch">
<TradeIds state="mismatch">
<TradeId state="mismatch">
<Id state="missing" />
<Id1 state="added" />
<Version state="mismatch">
<mic_elemA_text>1</mic_elemA_text>
<mic_elemB_text>2</mic_elemB_text>
</Version>
</TradeId>
<TradeId state="mismatch">
<Id state="mismatch">
<mic_elemA_text>1</mic_elemA_text>
<mic_elemB_text>2</mic_elemB_text>
</Id>
</TradeId>
</TradeIds>
<Fixings state="mismatch">
<mic_elemA_text>
</mic_elemA_text>
<mic_elemB_text>123</mic_elemB_text>
</Fixings>
<SpecificDetail state="mismatch">
<DirtyBondPrice mic_elemA_attr="%s=&quot;%s&quot;;%s=&quot;%s&quot;" mic_elemB_attr="%s=&quot;%s&quot;;%s=&quot;%s&quot;" state="mismatch" />
</SpecificDetail>
</RepoTrade>
</mic_root>


我需要找到所有具有mic_elem?_ ?????等属性的节点。例如,在上面的xml中,我需要获取DirtyBondPrice。我可以找到所有具有类似模式的节点,其代码如下所示:

Set xmlMatches = objResultsXML.GetRootElement.ChildElementsByPath("//*[starts-with(local-name(), 'mic_elem')]")


这给了我所有 <Version><mic_elemA_text><mic_elemB_text><Id><mic_elemA_text><mic_elemB_text>节点。

最佳答案

您可以对属性应用与对节点相同的方法:

//*[@*[starts-with(local-name(), 'mic_elem')]]


不会导致精确的模式: mic_elem?_?????,而是: mic_elem?????。这可能就足够了,因为后一种模式足以考虑按名称查找节点。

关于xml - 查找所有属性与模式匹配的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29844137/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com