I didn't say you couldn't build regexps dynamically. I said the quantifier can't be variable. Perl regular expressions don't even have variables, so you couldn't possibly have shown one being used.
You can't have a quantifier until you have a regexp, and you don't have a regexp until you interpolate anything that needs to be interpolated.
What's the quantifier in the following?
$ perl -E 'my $x = "2"; "ab" =~ /.{$x}/ and say "Matched"'
Matched
Are you saying it's different in this one?
$ perl -E 'my $x = "{2}"; "ab" =~ /.$x/ and say "Matched"'
Matched
What about this one?
$ perl -E 'my $x = "2}"; "ab" =~ /.{$x/ and say "Matched"'
Matched
In all cases, the quantifier is {2}. No variables is involved. Sure, the regexp is produced from a variable, but that has nothing to do with the quantifier.
Update: Clarified.
|