my @a = qw( a x z ); { local $" = ""; while (<>) { print if /^[@a]{3}$/; # /o might be good, too } } #### my @a = qw( a x z ); my $re = join '', @a; while (<>) { print if /^$re$/; # again, /o might help }