use Modern::Perl; use Regexp::Assemble; # first we make one big regex. my $ra = Regexp::Assemble->new; $ra->add(); say $ra->as_string; # to see how the regex looks my $regexp = $ra->re; open my $HOMEFILE, '<', '/home/file.csv'; open my $OUTPUT, '>', '/tmp/file.report'; while (<$HOMEFILE>) { /$regexp/ and say $OUTPUT "Something in [$_] matched"; } __DATA__ my.email@somewhere.com your.postbox@anywhere.net our.address@dropithere.org me.andmyself@sendit.com