特定のレベルのすべてのノードを検索でき、特定の (グランド) 子ノードがある場合にのみ返される XPath 文字列 (VBA Excel 用) を探しています。これがどれほど「深く」ネストされているかに関係なく。Relationale: 特定の子がどのくらいネストされているかがわからないため、固定パスを作成できません。
以下の例の場合。ルート「」の直下にあり、「Test」という名前を含む子を持つすべてのノードを検索しています
XML 文字列:
<Program>
<AA name="1"/>
<BB name="2">
<CC name="Test"/>
</BB>
<DD name="Test"/>
<EE name="3">
<FF name="4">
<GG name="Test"/>
</FF>
</EE>
</Program>
必須の選択:
Item(0) = <BB name="2">
Item(1) = <DD name="Test">
Item(2) = <EE name="3">
次の XPath 式は、以下のノードを提供します。Program
xmlDoc.selectNodes("/Program/*")
次の XPath 式は、名前を含むノードを示します。Test
xmlDoc.selectNodes("//*[@name="Test"]")
私が必要としているのは、2 つのパスの「結合」ではなく、「重なり」です。誰もこれを作る方法を知っていますか?