#!/usr/bin/perl use warnings; use strict; use Data::Dumper; my @new_order = (0, 1, 2, 3, 5, 4); my @AoA = ( [ "aaa", "bbb", "ccc", "ddd", "fff", "eee", ], [ "111", "222", "333", "444", "666", "555", ], [ "ppp", "eee", "rrr", "lll", "kkk", "ooo", ], ); my @new_aoa = @AoA[@new_order]; print Dumper \@new_aoa; print "\n\n";