grep { /Country/ && /City1/ && /Street1/ && ! /name1/ } ... #### #!/usr/bin/env perl -l use strict; use warnings; while () { if ((my $result) = grep { /Country/ && /City1/ && /Street1/ && ! /name1/ } $_) { print +(split ' ', $result)[4]; last; } } __DATA__ Country City Street1 number1 name1 Country City1 Street1 number1 name2 Country City1 Street1 number2 name3 Country City1 Street2 number1 name4 Country City1 Street2 number1 name5 #### name2