是否可以有这样的多行键?
mykey:
- >
key
one:
keytwo: val
Run Code Online (Sandbox Code Playgroud)
其中 keyone 被视为一把钥匙。我想解析 yaml 以产生:
{ mykey: [ { keyone: { keytwo: val } } ] }
Run Code Online (Sandbox Code Playgroud)
您可以在 YAML 中使用多行键,但与您描述的方式不同。在YAML映射可以通过前缀与键分裂的键和值到单独的行?
,并与值:
,如下所示:
? foo
: bar
Run Code Online (Sandbox Code Playgroud)
以上将产生一个类似于{ "foo": "bar" }
JSON的数据结构。YAML 规范将其称为显式键(而通常的foo: bar
样式是隐式)。使用显式样式时,键可以是任何YAML 数据结构,包括多行标量:
mykey:
- ? key
one
: keytwo: val
Run Code Online (Sandbox Code Playgroud)
...但是,就像 YAML 中的所有多行标量一样,即使行合并,每行的内容之间仍会保留一个空格,因此上述将产生类似于以下 JSON 的数据结构:
{ "mykey":
[ { "key one":
{ "keytwo": "val" }
}
]
}
Run Code Online (Sandbox Code Playgroud)
所以你最终得到了key one
而不是keyone
,这不是你想要的。但它是您最接近 YAML 的方法。
归档时间: |
|
查看次数: |
2899 次 |
最近记录: |