variable $_
1 | language documentation Variables |
1.1 | (Variables) variable $_ |
Documentation for variable $_
assembled from the following types:
language documentation Variables
From Variables
(Variables) variable $_
$_
is the topic variable. It's the default parameter for blocks that do not have an explicit signature, so constructs like for @array { ... }
and given $var { ... }
bind the value or values of the variable to $_
by invoking the block.
for <a b c> # sets $_ to 'a', 'b' and 'c' in turnsay for <a b c>; # same, even though it's not a blockgiven 'a' # sets $_ to 'a'say given 'a'; # same, even though it's not a block
CATCH
blocks set $_
to the exception that was caught. The ~~
smartmatch operator sets $_
on the right-hand side expression to the value of the left-hand side.
Calling a method on $_
can be shortened by leaving off the variable name:
.say; # same as $_.say
m/regex/
and /regex/
regex matches and s/regex/subst/
substitutions work on $_
:
say "Looking for strings with non-alphabetic characters...";for <ab:c d$e fgh ij*># OUTPUT: «Looking for strings with non-alphabetic characters...# ab:c# d$e# ij*»