my $sortstr = join('', @list); my @sorted_list = sort { index($sortstr,substr($a,0,1)) <=> index($sortstr,substr($b,0,1)) || $a <=> $b } @list2;