XYZ CMPNY775340Carol & Jerry
####
use strict;
use XML::Parser;
my $parser = new XML::Parser(ErrorContext => 2);
my $xmlStr = "
XYZ CMPNY
775340
Carol & Jerry
";
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;
####
Company_Name ---> [XYZ CMPNY]
First_Name ---> [Carol ]
[&]
[ Jerry]
####
Company_Name ---> [XYZ CMPNY]
First_Name ---> [Carol & Jerry]