※ ChatGPTを利用し、要約された質問です(原文:XPathでできるか確認)
XPathでファイルシステムを表現した要素を取得できるか確認
このQ&Aのポイント
XPathを使用してファイルシステムを表現した要素を取得できるかを確認したい。
指定した要素の子要素に<dir>要素がない場合に取得する方法が知りたい。
指定した要素の子要素に<dir>要素がある場合に取得する方法が知りたい。
以下のようなファイルシステムを表現したものがあるとします。
<dir attr="0">
<dir attr="1">
<file />
<dir attr="1-1">
<file />
</dir>
<dir attr="1-2">
</dir>
<file />
</dir>
<dir attr="2">
<dir attr="2-1">
</dir>
<dir attr="2-2">
<dir attr="2-2-1">
</dir>
</dir>
</dir>
<dir attr="3">
</dir>
</dir>
<dir>要素の下には<dir>要素が0個以上あるような再帰的な構造です。
XPathで、"//dir"と指定して、すべて<dir>要素を取得できるのはわかりました。
さらに以下のことができると便利だなぁと思っているのですが、可能でしょうか。
・子要素に<dir>要素がない<dir>要素をすべて。
・逆に子要素に<dir>要素がある<dir>要素をすべて。
お礼
回答ありがとうございます。 ちょうど今日、同僚が答えを見つけたので、質問を取り下げるところでした。 回答をみると単純ですが、XML入門と銘打つ書籍をいくつか読んでも、この答えにたどりつかなかったので助かりました。