YAML - 块标量标头

在本章中,我们将重点介绍用于表示内容的各种标量类型。在 YAML 中,注释可以位于标量内容之前或之后。需要注意的是,注释不应包含在标量内容中。

请注意,所有流标量样式都可以包含多行,但多个键中的用法除外。

标量的表示如下所示−

%YAML 1.1
---
!!map {
   ? !!str "simple key"
   : !!map {
      ? !!str "also simple"
      : !!str "value",
      ? !!str "not a simple key"
      : !!str "any value"
   }
}

生成的块标量头输出如下所示−

{
   "simple key": {
      "not a simple key": "any value", 
      "also simple": "value"
   }
}

文档标记标量内容

此示例中的所有字符均视为内容,包括内部空格字符。

%YAML 1.1
---
!!map {
   ? !!str "---"
   : !!str "foo",
   ? !!str "...",
   : !!str "bar"
}

%YAML 1.1
---
!!seq [
   !!str "---",
   !!str "...",
   !!map {
      ? !!str "---"
      : !!str "..."
   }
]

普通换行符用下面的示例表示 −

%YAML 1.1
---
!!str "as space \
trimmed
\
specific\L
\
none"

对应的 JSON 输出如下 −

"as space trimmed
specific\u2028
none"