Wahrscheinlich willst du unter $config{tag_addr} einen Array haben, das erreichst du mit deinem Code aber nicht. Du bräuchtest eckige anstatt runde Klammern um einen anonymen Array zu erzeugen und die Referenz darauf unter $config{tag_addr} abzulegen.
So in etwa würde ich mir ein funktionierendes Script vorstellen:
my %config = (
tag_addr => [
"addr:housenumber", "addr:housename", "addr:street",
"addr:postcode", "addr:full"
],
);
my @key_list = qw/addr:housenumber addr:name addr:street/;
for my $key_name (@key_list) {
if( grep{ $key_name eq $_ } @{$config{tag_addr}} ) {
print $key_name." -> gefiltert\n";
}
}
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B