You're forgetting about $` and $'. Between $`, $' and $&, the entire string is covered.
| [reply] [d/l] [select] |
Also unfortunate...
Maybe it would be neat if there was a new feature that turned those off for any match in the scope where it was disabled... to maybe be added to some future "use v5.46".
Or, maybe Regexp refs should have methods, so the regex engine can be used without affecting *any* global variables.
my $match= qr/(\d+)/->match($subject);
say $match->captures->[0] if $match;
| [reply] [d/l] |