for $temp (@rArray){ my $pre; my $post = ""; my ($a1,$b1,$c1,$d1,$e1,$f1,$g1,$h1) = split(/;;/,$temp); if ($d1 eq "200"){ $pre = ""; } if ($d1 eq "300"){ $pre = ""; } if ($d1 eq "400"){ $pre = ""; } if ($d1 eq "500"){ $pre = ""; } $a1 = $pre.$a1.$post; $a1 =~ s/&/&/g; $b1 = $pre.$b1.$post; $b1 =~ s/&/&/g; $c1 = $pre.$c1.$post; $c1 =~ s/&/&/g; $d1 = $pre.$d1.$post; $d1 =~ s/&/&/g; $e1 = $pre.$e1.$post; $e1 =~ s/&/&/g; $f1 = $pre.$f1.$post; $f1 =~ s/&/&/g; $g1 = $pre.$g1.$post; $g1 =~ s/&/&/g; $h1 = $pre.$h1.$post; $h1 =~ s/&/&/g; push @{$table->{data}},[$a1,$b1,$c1,$d1,$e1,$f1,$g1,$h1]; }