Perlでハッシュの上書き
追記
これで良かった
use strict; use warnings; use Data::Dumper; my %hash1 = (a=>1,b=>2,c=>3); print Dumper \%hash1; #$VAR1 = { # 'c' => 3, # 'a' => 1, # 'b' => 2 # }; my %hash2 = (b=>5,d=>6); print Dumper \%hash2; #$VAR1 = { # 'b' => 5, # 'd' => 6 # }; %hash1 = (%hash1,%hash2); print Dumper \%hash1; #$VAR1 = { # 'c' => 3, # 'a' => 1, # 'b' => 5, # 'd' => 6 # };
こんなんでよいだろうか?
use strict; use warnings; use Data::Dumper; my %hash1 = (a=>1,b=>2,c=>3); print Dumper \%hash1; #$VAR1 = { # 'c' => 3, # 'a' => 1, # 'b' => 2 # }; my %hash2 = (b=>5,d=>6); print Dumper \%hash2; #$VAR1 = { # 'b' => 5, # 'd' => 6 # }; my @keys = keys %hash2; @hash1{@keys} = @hash2{@keys}; print Dumper \%hash1; #$VAR1 = { # 'c' => 3, # 'a' => 1, # 'b' => 5, # 'd' => 6 # };