shak has asked for the wisdom of the Perl Monks concerning the following question:
My codeVAL1 ,0,0 VAL2,0,0 VEL3,0,0 VAL4,0,0 VAL5 ,490783914,4532
Input XML Filemy $parser = XML::LibXML->new(); my $doc = $parser->parse_file($filename); foreach my $book ($doc->findnodes('/mdc/md/mt[text()="VAL1"]') { $val1=$book->findnodes('./r[1]/text ()'); push (@Val,$val1) }
<p> <mdc xmlns:HTML="http://www.w3.org/TR/REC-xml"> <md> <neid> <neun></neun> <nedn>GET_SUB</nedn> <nesw>R4BA06</nesw> </neid> <mi> <mts>20150429141500Z</mts> <gp>900</gp> <mt>VAL1</mt> <mt>VAL2</mt> <mt>VAL3</mt> <mt>VAL4</mt> <mt>VAL5</mt> <mt>VAL6</mt> <mt>VAL7</mt> <mt>VAL8</mt> <mv> <moid>NAME</moid> <r>0</r> <r>0</r> <r>0</r> <r>0</r> <r>490783914</r> <r>0</r> <r>0</r> <r>0</r> </mv> <mv> <moid>NAME1</moid> <r>0</r> <r>0</r> <r>0</r> <r>0</r> <r>4532</r> <r>0</r> <r>0</r> <r>0</r> </mv> </mi> </md> </mdc>
Update
I was not aware of "count(preceding-sibling)" function ,your code just worked fine.VAL1,NAME,0 VAL1,NAME1,0 VAL2,NAME,0 VAL2,NAME1,0
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Extraction of value with XMLLIB
by choroba (Cardinal) on May 05, 2015 at 15:00 UTC | |
by shak (Initiate) on May 06, 2015 at 12:04 UTC | |
by choroba (Cardinal) on May 06, 2015 at 12:16 UTC | |
by shak (Initiate) on May 06, 2015 at 12:20 UTC | |
by Anonymous Monk on May 08, 2015 at 06:57 UTC | |
|
Re: Extraction of value with XMLLIB
by Anonymous Monk on May 05, 2015 at 14:56 UTC |