my %fields = ( version1 => { 1 => 'Field 1', 2 => 'Field 2', 3 => 'Field 3', }, version2 => { 1 => 'Field 1', 2 => 'Field 2', 3 => 'Field 3', 4 => 'Field 4', }, version3 => { 1 => 'Field 1', 2 => 'Field 2', 3 => 'Field 3', 4 => 'Field 4', 5 => 'Field 5', }, ); my %synonyms = ( version4 => 'version3', # ... maybe you want others? ... ); $fields{$_} = $fields{ $synonyms{$_} } for ( keys %synonyms );