my $itemPart = "Group1]Item2"; my @items = ( '[x.Group1]Item1=Value1', '[y.Group1]Item2=Value2', '[z.Group1]Item3=Value3', '[a.Group2]Item1=Value1', '[b.Group2]Item2=Value2' ); my $found_item; for my $item (@items) { # for each element, test if it contains $itemPart; # we need to use \Q and \E to meta-quote $itemPart, # in case it contains any regexp metacharacters if ($item =~ /\Q$itemPart\E/o) { $found_item = $item; last; } } # now check if we actually found an item; # if we did, $found_item will be defined if (defined $found_item) { print $found_item, "\n"; } else { print "Not Found!\n"; }