my %A; for (0..$#A_v_B1) { $A{$A_v_B1[$_]}{B} = $A_v_B2[$_]; } for (0..$#A_v_C1) { $A{$A_v_C1[$_]}{C} = $A_v_C2[$_]; } #### A101 => { B => B302, C => C302 }, A103 => { B => B405 }, A104 => { B => B406 }, A106 => { C => C305 }, A109 => { C => C306 },