#!/usr/bin/perl
my %table;
my $ID="ID";
my $NOME='NOME';
my $CPF='CPF';
my $BRUTO='BRUTO';
my $IRRF='IRRF';
my $PREV='PREV';
my $LIQUIDO='LIQUIDO';
my $TETO='TETO';
my $MAX_COUNT=5;
my $token = '';
my $count;
while (<>) {
if ($token eq $NOME) {
#print "'".$token."'='".$NOME."'\n";
s/^\s*//; s/\s+/ /; s/\s*$//;
if ($count==2) {
#print 'nome = '.$_."\n";
$table{$token}='"'.$_.'"';
$token='';
}
} elsif ($token eq $CPF) {
s/^\s*//; s/\s+/ /; s/\s*$//;
if ($count==2) {
#print 'CPF = '.$_."\n";
$table{$token}='"'.$_.'"';
$token='';
}
} elsif ($token eq $BRUTO) {
if (/
(.*)<\/td>/) {
my $val = $1;
$val =~ s/\.//g;
$val =~ s/,/./g;
#print 'Bruto = '.$val."\n";
$table{$token}=$val;
$token='';
}
} elsif ($token eq $IRRF) {
if (/ | (.*)<\/td>/) {
my $val = $1;
$val =~ s/\.//g;
$val =~ s/,/./g;
#print 'IRRF = '.$val."\n";
$table{$token}=$val;
$token='';
}
} elsif ($token eq $PREV) {
if (/ | (.*)<\/td>/) {
my $val = $1;
$val =~ s/\.//g;
$val =~ s/,/./g;
#print 'Previdencia = '.$val."\n";
$table{$token}=$val;
$token='';
}
} elsif ($token eq $LIQUIDO) {
if (/ | (.*)<\/td>/) {
my $val = $1;
$val =~ s/\.//g;
$val =~ s/,/./g;
#print 'Liquido = '.$val."\n";
$table{$token}=$val;
$token='';
}
} elsif ($token eq $TETO) {
if (/ | (.*)<\/td>/) {
my $val = $1;
$val =~ s/\.//g;
$val =~ s/,/./g;
#print 'Abate Teto = '.$val."\n";
$table{$token}=$val;
$token='';
}
} elsif (//) {
$table{$ID} = $1;
} else {
$count = 0;
if (/ | Nome:<\/nobr> <\/td>/) { $token=$NOME; }
if (/ CPF:<\/nobr> <\/td>/) { $token=$CPF; }
if (/Remunera..o b.sica bruta<\/td>/) { $token=$BRUTO; }
if (/ | IRRF \(Imposto de Renda Retido na Fonte\)<\/td>/) { $token=$IRRF; }
if (/ | PSS\/RPGS \(Previd.ncia Oficial\)<\/td>/) { $token=$PREV; }
if (/ | /) { $token=$LIQUIDO; }
if (/Abate Teto \(-\)<\/td>/) { $token=$TETO; }
#template para novos tokens
#if (//) { $token=$TOKEN; }
}
$count++;
if ($count>$MAX_COUNT) { die 'ERROR'; }
}
for $token ($ID, $NOME, $CPF, $BRUTO, $TETO, $IRRF, $PREV, $LIQUIDO) {
print $table{$token}.";";
}
print "\n";
| | |