I need only "Company_Name" and "First_Name". I have written perl code using XML::Parser. The code below<Company_Name>XYZ CMPNY</Company_Name><ArgId>775340</ArgId><First_Name +>Carol & Jerry</First_Name>
OUTPUT:use strict; use XML::Parser; my $parser = new XML::Parser(ErrorContext => 2); my $xmlStr = "<data> <Company_Name>XYZ CMPNY</Company_Name> <ArgId>775340</ArgId> <First_Name>Carol & Jerry</First_Name> </data>"; my $writeDataFlag = 0; $parser->setHandlers( Start => \&start_handler, Char => \&char_handler, End => \&end_handler); $parser->parse($xmlStr); sub char_handler { my ($p, $data) = @_; if($writeDataFlag ==1 ){ print "Data - [$data] \n"; } } sub start_handler { my ($p, $data) = @_; if($data =~ /^(Company_Name|First_Name)$/) { $writeDataFlag = 1; } } sub end_handler { my ($p, $data) = @_; $writeDataFlag = 0; } 1;
I need OTUPUT:Company_Name ---> [XYZ CMPNY] First_Name ---> [Carol ] [&] [ Jerry]
Please suggest me whats wrong with my code?Company_Name ---> [XYZ CMPNY] First_Name ---> [Carol & Jerry]
In reply to A Small XML::Parser issue by siva kumar
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |