YAML Grammar
10 methodsYAML 语法参考,涵盖标量、集合、块标量、锚点等数据结构。
scalar标量,表示字符串、数字、布尔等基础值。
Returns
解析为对应类型的标量值(字符串、整数、浮点数等)。
Example
yaml
name: YAML
version: 1.2
port: 8080
ratio: 0.95
enabled: truemapping:映射,以键值对形式组织数据,键后接冒号与空格。
Returns
解析为键值对组成的对象/字典结构。
Example
yaml
server:
host: localhost
port: 3000
timeout: 30- item序列,以连字符开头的列表项表示有序集合。
Returns
解析为有序数组/列表结构。
Example
yaml
fruits:
- apple
- banana
- cherry
- 第一个文档项
- 第二个文档项[a, b] / {k: v}流式风格,用方括号表示序列、花括号表示映射,可在单行书写。
Returns
解析为与块式等价的数组或对象。
Example
yaml
colors: [red, green, blue]
point: {x: 10, y: 20}
mixed: [{a: 1}, {b: 2}]| / >块标量,| 保留换行(字面),> 折叠换行为空格(折叠)。
Returns
解析为多行字符串,| 保留原样换行,> 折叠为段落。
Example
yaml
literal: |
第一行
第二行
folded: >
这是一段
被折叠成一行
的文本。&anchor / *alias锚点与别名,& 定义锚点,* 引用锚点以复用节点。
Returns
& 定义可复用节点,* 引用其内容,实现节点共享。
Example
yaml
defaults: &def
timeout: 30
retries: 3
prod:
<<: *def
host: prod.example.com# comment注释,以 # 开头,持续到行尾,被解析器忽略。
Returns
不产生任何数据节点,仅供阅读。
Example
yaml
# 服务器配置
server:
host: localhost # 仅开发环境
port: 8080null / true / falseYAML 内置标量,识别 null/空、true/false 等特殊值。
Returns
解析为对应类型的 null、布尔值或空值。
Example
yaml
debug: false
verbose: true
nullable: null
empty:
another: ~!!type标签,显式指定节点类型或进行类型强制转换。
Returns
将节点解析为标签指定的类型。
Example
yaml
age: !!int "25"
pi: !!float "3.14"
flag: !!str yes
seq: !!seq [1, 2, 3]--- / ...文档分隔符,--- 标记文档开始,... 标记文档结束(可选)。
Returns
在一个文件中划分多个独立 YAML 文档。
Example
yaml
---
name: doc1
value: 1
---
name: doc2
value: 2
...