Just some humble comments:
foreach (@array_1) { chomp $_; }
can be written as
chomp @array_1;
Generally, there seems to be too much chomping.
Instead of
foreach my $element(@array_1) { if ($element !~ /^\s*$/) { if (($element =~ m/$output/) && ($element =~ m/$input/)) { #print +out all the matching output lines
you could
foreach my $element (grep { /$output/ && /$input/ } @array_1) {
Instead of
$join_1 = join (" ", "$input_1","$V_output","$marc_data","$marc_add"," +$stage_1")); push (@array_2,$join_1);
you could
push @array_2, "$input_1 $V_output $marc_data $marc_add $stage_1";
Instead of joining it into one string and then splitting it later again (hopefully the data does not contain any spaces...), you could store it in an array of arrays like this:
push @array_2, [ $input_1, $V_output, $marc_data, $marc_add, $stage_1 +]; # and later foreach (@array_2) { my ($input_2,$output_2,$data,$address,$stage_output_1) = @$_;
In reply to Re: Searching for two elements in two different lines
by hdb
in thread Searching for two elements in two different lines
by noob_mas
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |