【发布时间】:2014-03-24 07:58:43
【问题描述】:
我有一个 xml,我需要解析 xml 并遍历到最后一个孩子,XML 将动态生成,所以我不知道 XML 的深度,我可以遍历 xml 直到它的最后一个孩子和兄弟姐妹如果有的话。请帮忙解决这个问题:
我的代码 sn-p 是:
foreach my $childNodes ($root->findnodes('/'))
{
print $childNodes->nodePath;
print "\n";
if($childNodes->hasChildNodes)
{
foreach my $gChildNode ($camelid->childNodes)
{
print $gChildNode->nodePath;
print "\n";
}
}
这会打印节点直到深度 2,但如果深度为 3,我的意思是根有一个孩子,而孩子我的代码会打印它,但如果这里有另一个孩子,代码将不会打印并且无法猜测..怎么能我找到了这个。
提前致谢。
【问题讨论】:
-
答案就在你的标题中:你需要递归。
标签: xml perl xml-libxml