use Sort::Key qw(keysort); my @sorted = keysort { join '', /[aeiou]+/g } @data;