%targets = ( '_source' => [], '_name'=> [] ); foreach my $ip1 (@ips){ foreach my $ref (@http){ for my $bla ( $ref->{'_source'}->{'clientip'} ) { if ($bla eq $ip1){ my $name = gethostbyaddr(inet_aton($bla), AF_INET); if ( $name !~ /.*\.dom1\.\.*.*./ ) { if ( $name !~ /.*\.dom2\.\.*.*./ ) { if ( $name !~ /.*\.dom3\.\.*.*./ ) { push @{ $targets{'_source'} }, $bla; push @{ $targets{'_name'} }, $name; } } } } } } }