Your hash does not contain what you think it contains. Specifically, it has only a single key:
#!/usr/bin/env perl
use strict;
use warnings;
my %dat;
$dat{"1","1","1","1","1"}{'CR'} = "2";
use Data::Dumper;
print Dumper \%dat
Output:
$VAR1 = {
'11111' => {
'CR' => '2'
}
};
As suggested by Сухой27, the 1
s in the key are concatenated using the value of $;
as a separator:
#!/usr/bin/env perl
use strict;
use warnings;
$; = '---';
my %dat;
$dat{"1","1","1","1","1"}{'CR'} = "2";
use Data::Dumper;
print Dumper \%dat
Output:
$VAR1 = {
'1---1---1---1---1' => {
'CR' => '2'
}
};
Change $;
to an empty string, and you'll get 11111
as output, as I assume you're expecting.