如何在后向断言中使用捕获组?
我尝试使用与此答案相同的公式。但这似乎不适用于lookbehinds。
从概念上讲,这就是我想要做的。
say "133" ~~ m/ <?after $0+> (\d) $ /
我知道这可以在没有后视的情况下轻松实现,但暂时忽略它:)
为此,我尝试了以下选项:
使用:var
语法:
say "133" ~~ m/ <?after $look-behind+> (\d):my $look-behind; $ /;
# Variable '$look-behind' is not declared
使用code block
定义外部变量的语法:
my $look-behind;
say "133" ~~ m/ <?after $look-behind+> (\d) {$look-behind=$0} $ /;
# False
似乎问题在于lookbehind
在“代码块/:my $var”之前执行,因此对于后视树来说变量是空的。
有没有办法在lookbehinds中使用捕获组?