in reply to Regular expression help

You can use capturing parentheses and a global match. Avoid using $&, $` and $' if you can as once used in a script they impose a performance penalty on all regular expressions in that script.

#!/usr/bin/perl -l # use strict; use warnings; my @required = ( q{this}, q{that}, q{the other}, q{bat}, ); my $rxRequired = do { local $" = q{|}; qr{(?i)\b(@required)\b}; }; my $text = q{This afternoon I found a bat in the other bath, that was odd!}; print for $text =~ m{$rxRequired}g;

The output.

This bat the other that

I hope this is useful.

Cheers,

JohnGG