所以我想转此:
a:
b: &b "hello"
c: *b "world"
进入:{"a"=>{"b"=>"hello", "c"=>"hello world"}}
但是现在我得到did not find expected key while parsing a block mapping at line 2 column 3
。
我知道这很好用:
a:
b: &b "hello"
c: *b
(我从learnxinyminutes学习并尝试了一些%() %{} #{} ..
语法,但没有一种方法有效)
答案 0 :(得分:8)
YAML不是一种编程语言,并且通常不提供用于执行所需操作的工具。
但是,如果你真的想做这样的事情,没有什么阻碍你定义一些标记!concat
并以一种让你做的方式实现它
a:
b: &b "hello"
c: !concat [*b, "world"]
重要的是:你需要在装载方面自己实现。这个想法不是太奇特了; !!merge
标签有一个(非标准)定义,它与映射here做类似的事情,有些YAML实现支持它。但出于好的原因,它没有找到进入标准的方法。经验法则:如果你想做这样的事情,YAML可能不适合你。