use strict; use warnings; my $string = '^a{4}b{2}'; my $patt = qr/$string/; my %hsh = ($string => $string, $patt => $patt,); my $test = 'aaaabb'; foreach (keys %hsh){ print "YES for regex : $_\n" if $test =~ /$_/; } print "YES for existance : $_\n" if (exists$hsh{$test});