use warnings; use strict; my @routers = ( "R1", "R2", "R3" ); my %if = ( R1 => { R1R0 => 1, R1R6 => 2, }, R2 => { R2R0 => 3, R2R6 => 1, }, R3 => { R3R61 => 2, R3R62 => 3, }, ); for my $r (@routers) { for my $i (keys %{ $if{$r} }) { print "Router $r Interface $i\n"; } } __END__ Router R1 Interface R1R0 Router R1 Interface R1R6 Router R2 Interface R2R0 Router R2 Interface R2R6 Router R3 Interface R3R61 Router R3 Interface R3R62