use Regexp::Assemble; my $ra=Regexp::Assemble->new; $ra->add('Text.'); $ra->add('TEXT.'); $ra->add('Texts'); print $ra->re; #### (?-xism:T(?:EXT.|ext.))