将Seq(Seq)分配给多个类型数组而不先将Seq分配给标量的正确语法是什么?Seq是否会以某种方式展平?这将失败:
class A { has Int $.r }
my A (@ra1, @ra2);
#create two arrays with 5 random numbers below a certain limit
#Fails: Type check failed in assignment to @ra1; expected A but got Seq($((A.new(r => 3), A.n...)
(@ra1, @ra2) =
<10 20>.map( -> $up_limit {
(^5).map({A.new( r => (^$up_limit).pick ) })
});
Run Code Online (Sandbox Code Playgroud) 我想for使用命名捕获在块中进行字符串替换。我期望得到数字 1,2,3 作为输出。但它Nil用于第一次运行,然后是 1 和 2 用于第二次和第三次运行。如何.subst在循环结构中正确使用?当使用map构造而不是for循环时,我看到了相同的行为。如果我用固定的字符串值替换它,它确实按预期工作。
for <a1 b2 c3> -> $var {
say $var;
say $var.subst(/.$<nr>=(\d)/, $<nr>); #.subst(/.$<nr>=(\d)/, 'X'); #OK
}
#`[
This is Rakudo version 2019.11 built on MoarVM version 2019.11
Output:
a1
Use of Nil in string context
in block at test3.pl6 line 3
b2
1
c3
2
]
Run Code Online (Sandbox Code Playgroud) 为什么1,2和3版本有效,但4版本却失败:Null regex not allowed在//多行上使用时?
#1
say Nil //
try {'a'++} //
1;
#2
say Nil
// try {'a'++} //
2;
#3
say Nil
// 3;
#Fails with: Null regex not allowed
say Nil
// try {'a'++}
// 4;
Run Code Online (Sandbox Code Playgroud) 访问仅带有Perl6 Module JSON :: Path编号的json键的正确语法是什么?我收到“位置6处的JSON路径解析错误”错误。
我想访问项目-> 2018->名称:
use JSON::Path;
my Str $json = ?
{
"items" : {
"old" : { "name" : "olditem" },
"2017" : { "name" : "item1" },
"2018" : { "name" : "item2" },
"2019" : { "name" : "item3" }
}
}
?;
Run Code Online (Sandbox Code Playgroud)
还行吧
#("olditem", "item3", "item1", "item2")
my JSON::Path $jp .= new: '.items[*].name';
say $jp.values($json);
Run Code Online (Sandbox Code Playgroud)
还可以
#("olditem")
$jp .= new: '.items.old.name';
say $jp.values($json);
Run Code Online (Sandbox Code Playgroud)
没有返回任何东西
#()
$jp .= new: ".items['2018'].name";
say $jp.values($json);
Run Code Online (Sandbox Code Playgroud)
错误
#JSON …Run Code Online (Sandbox Code Playgroud) 在哪里可以找到Text :: CSV支持的编码?是否不支持“ latin1”或语法错误?
这确实失败了:
use Text::CSV;
spurt '/tmp/test.csv', 'ID;Gerät;Nr', :enc<latin1>;
slurp '/tmp/test.csv', :enc<latin1>; #ok
say csv :in</tmp/test.csv>, :encoding<latin1>, :sep_char<;>;
#Malformed UTF-8 error
Run Code Online (Sandbox Code Playgroud) 在日志::时间轴可视化还支持与逗号IDEA插件的IntelliJ呢,还是独立逗号IDE的一部分吗?并且,如果IntelliJ支持它,则IntelliJ是否需要其他组件?