use Sort::Key qw(keysort); @sorted = keysort { join('', map chr, split /\./) } @data;