use v5.18;
use utf8;
sub anagram {
my $arrayref = shift;
my %uniq;
my %res;
for my $val (map { lc $_ } @$arrayref) {
next if $uniq{$val}++;
my $key = join '', sort split(//, $val);
push @{ $res{$key} }, $val;
}
my %res2;
for my $key (keys %res) {
next if scalar @{ $res{$key} } < 2;
my $k = $res{$key}->[0];
@{ $res2{$k} } = @{ $res{$key} };
}
return \%res2;
}
my @list = ('пятак', 'ЛиСток', 'пятка', 'стул', 'ПяТаК', 'слиток', 'тяпка', 'столик', 'слиток');
my $result = anagram(\@list);
say "$_: @{$result->{$_}}" for sort keys %$result;
# { 'пятак' => ['пятак', 'пятка', 'тяпка'], 'листок' => ['листок', 'слиток', 'столик'], }