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"]