in reply to Sort - can't

From what I can gather from your post, you are trying to sort a list of files in a directory based on the last element of the filename. Your code, and therefore intent, is not clear. Try this:

my @new_array = sort { $b->[2] <=> $a->[2] } map { [ split /\//, $_, 3 + ] } @submenu;
This will take your items in @submenu, split them all into three elements, then do a NUMERIC sort in descending order on the last element and put the results into @new_array. Please note that @new_array will be the unsplit @submenu. If you want split, the above algorithm will need to be broken down into intermediate steps. Also note, if you do not want a numeric sort, change <=> to cmp to get an ALPHA sort.

Ivan Heffner
Sr. Software Engineer, DAS Lead
WhitePages.com, Inc.