foreach $try (@text){ $try =~/^(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)$/gs or die "
problem with $try
"; my $Institution = $1; my $CourseNumber = $2; my $Professor = $3; my $Enrollment = $4; ........ if (!$CourseNumber && !$Institution){last;}; if ($CourseNumber ne $LastCourseNumber){ $courseindex = $courseindex + 1; $courselist[$courseindex] = [$Institution, $CourseNumber, $Professor, $CourseTitle, $Enrollment]; }; $LastCourseNumber = $CourseNumber; }; @courselist = sort { $a->[0] cmp $b->[0] || $a->[1] cmp $b->[1] } @courselist; #### $courselist[0] = ["UM", "CS 34", "Smith", "34"] $courselist[1] = ["AC", "PHIL 13", "Barry", "45"] $courselist[2] = ["UM", "BIO 567", "Houlihan", "12"] #### $courselist[0] = ["AC", "PHIL 13", "Barry", "45"] $courselist[1] = ["UM", "BIO 567", "Houlihan", "12"] $courselist[2] = ["UM", "CS 34", "Smith", "34"]