Thanks, it works now. A quick follow-up question. I've just noticed that a few "nodes" have child "nodes" with similar attributes:
<?xml version="1.0" encoding="Windows-1252"?>
<App>
<node name="1st node" text="Text of 1st node" />
<node name="2nd node" text="Text of 2nd node">
<node name="subnode A" text="Text of subnode A" />
<node name="subnode B" text="Text of subnode B" />
</node>
<node name="3rd node" text="Text of 3rd node" />
...
</App>
I'd like to print this out as follows:
1st node: Text of 1st node
2nd node: Text of 2nd node
subnode A: Text of subnode A
subnode B: Text of subnode B
3rd node: Text of 3rd node
Without getting into any scary recursion, how would I modify the loop to print out the subnodes, too?
foreach my $node (@{$data->{node}}) {
print $node->{name}.": ".$node->{text}."\n";
if ( ... ) { # detect the existence of a subnode here somehow
foreach my $subnode (@{$data->{node}{subnode}}) {
print "\t".$subnode->{name}.": ".$subnode->{text}."\n";
}
}
}
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|