简短的问题:什么意思
keys %+
在perl?
我在一些源代码中看到了它。
答案 0 :(得分:5)
哈希%+
包含当前范围内正则表达式中命名捕获组的所有匹配项。 %LAST_PAREN_MATCH
在{{1}}下解释,并在5.10中添加。
与@ +类似,%+ hash允许访问命名捕获 缓冲区,如果它们存在,则在最后一次成功匹配中 目前活跃的动态范围。 [..]
perlvar函数列出了散列中的所有键。
答案 1 :(得分:5)
每当你看到一个看起来很常见的变量时,请在perldoc perlvar
中查找。
在这种情况下,%+
是存储与最后一个正则表达式的命名捕获相对应的值的哈希:
与
@+
类似,%+
哈希允许访问命名捕获 缓冲区,如果它们存在,则在最后一次成功匹配中 目前活跃的动态范围。例如,$+{foo}
相当于 在以下匹配后$1
:'foo' =~ /(?<foo>foo)/;
有关详细信息,请参阅perldoc perlretut
。
答案 2 :(得分:4)
这些文档是您想要的:
perldoc -f keys
perldoc -v %+