package Foo::Bar; use Regexp::Assemble; our $VERSION = '0.01'; sub new { my $class = shift; my $self = bless({@_}, $class); ## precompile regexes $self->{regex} = Regexp::Assemble->new->add( 'some-stuff' )->re; return $self; } sub function { my $self; ... $var =~ $regex; } #### package Foo::Bar; use Regexp::Assemble; our $VERSION = '0.01'; our $regex = Regexp::Assemble->new->add( 'some-stuff' )->re; sub function { ... $var =~ $regex; }