which yields:#!/usr/bin/perl -w use strict; my @approved = qw( foo bar); @approved = map { $_ = quotemeta $_; ### very important qr/$_/is; ## available in perl 6, not really needed } @approved; print "The approved list\n", join "\n", @approved; my $merex = join ' && ', map "/$_/", @approved; print "merex \n$merex\n\n"; if(@ARGV) { print "ARGV\n"; while(<DATA>) { print if eval $merex; } } else { while(<DATA>) { my $toprint = 0; for my $r(@approved) { $toprint++ if m/$r/; } print if $toprint == scalar @approved; } } __DATA__ foo bar bar foo foo bar baz barbazfoo foofoobar
F:\dev>perl f.pl 3 The approved list (?si-xm:foo) (?si-xm:bar)merex /(?si-xm:foo)/ && /(?si-xm:bar)/ ARGV foo bar bar foo barbazfoo foofoobar F:\dev>perl f.pl The approved list (?si-xm:foo) (?si-xm:bar)merex /(?si-xm:foo)/ && /(?si-xm:bar)/ foo bar bar foo barbazfoo foofoobar F:\dev>
___crazyinsomniac_______________________________________
Disclaimer: Don't blame. It came from inside the void
perl -e "$q=$_;map({chr unpack qq;H*;,$_}split(q;;,q*H*));print;$q/$q;"
In reply to (crazyinsomniac) Re^2: Regular expression and
by crazyinsomniac
in thread Regular expression for two required words
by fsn
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |