$ perl -E' sub f { say $1; "b"=~/(b)/; say $1; } "a"=~/(a)/; say $1; f(); say $1; ' a a b a #### $ perl -E' sub f { say $_[0]; "b"=~/(b)/; say $_[0]; } "a"=~/(a)/; f($1); ' a b #### /.../; mysub("$1", "$2"); sub mysub { /.../; shift; shift; } #### my ($x, $y) =~ /.../; mysub($x, $y); sub mysub { /.../; shift; shift; } #### /.../; mysub($1, $2); sub mysub { my ($x, $y) = @_; /.../; $x; $y; }