my %targets = map {/(.*)/; ($1, 1)} ; my @neighbours = @domain1[grep {$_ > 0 && $targets{$domain[$_-1]} || $_ < $#domain1 && $targets{$domain[$_+1]}} 0..$#domain];