my $string = 'aaaaa'; my $var = 'a'; my %var = (5 => 'hash interpolated'); print "String: $var{5}\n"; print "Regex: ", ($string =~ /$var{5}/ ? 'scalar interpolated' : 'hash interpolated'), "\n"; print "Regex (force hash): ", ($string =~ /${var{5}}/ ? 'scalar' : 'hash'), "\n"; print "Regex (force scalar): ", ($string =~ /${var}{5}/ ? 'scalar' : 'hash'), "\n"; # Output is: # String: hash interpolated # Regex: scalar interpolated # Regex (force hash): hash # Regex (force scalar): scalar