use Sort::Key qw( keysort ); my @newsorted = keysort { tr/.../.../r } @list;