I am trying to return new values based on if else. I understand the idea of using if else, but I am not sure I have placed in the right place. I was assuming I would want to insert it before the array is sorted. Thank you in advance. This mailing list is helping me understand perl greatly!
I am getting the following error: Use of uninitialized value within @data in pattern match (m//) at ./DOband.pl line 19, <$fh> line 485. #!/usr/bin/perl use warnings; use strict; my $filepath = 'C:/temp/PCMD'; my $outfile = 'output.txt'; open my $fh, '<', $filepath or die "ERROR opening $filepath: $!"; open my $out, '>', $outfile or die "ERROR opening $outfile: $!"; my @array; while (<$fh>) { next unless /;/; chomp; my @data = ( split /;/ )[31,32,38,39,261]; if (@data[39] =~ /15/) { 2 } else { 1 } push @array, join "\t", @data; } @array = sort { my @aa = split /\t/, $a; my @bb = split /\t/, $b; $aa[0] <=> $bb[0] or $aa[1] <=> $bb[1] or $aa[2] <=> $bb[2]; } @array; print $out "$_\n" foreach @array; close $out; #RTD 1 unit = 4 chips RUM Field 16 0 - 2^16 - 1 milliseconds Chris Stinemetz