YAML语法记录

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: YAML语法记录

YAML语法记录

记录一下yaml的语法,方便以后查找,前端领域用yaml相对来说少一点,一旦用忘了语法很难受,特此记录。

一、YAML简介

YAML(Yet Another Markup Language)是一种直观的、可读性高并且容易被人类阅读和理解的数据序列化格式。它常用于配置文件,但也可以用于数据存储、传输等其他场景。YAML的设计目标包括易读性、与脚本语言的交互性好等。

二、YAML基本语法

1. 基本结构

YAML文件由键值对组成,键和值之间用冒号:分隔,冒号后面要加一个空格。

key: value

2. 层级关系

YAML使用缩进来表示层级关系,通常使用两个空格进行缩进。注意,不能使用制表符(Tab)进行缩进,因为不同的系统对制表符的宽度解释可能不同。

parent:
  child1: value1
  child2: value2

3. 多行字符串

使用|可以保留字符串中的换行符,>则会将换行符替换为一个空格。

key1: |
  line1
  line2
key2: >
  line1
  line2

4. 数组

使用-可以表示数组或列表。

fruits:
  - apple
  - banana
  - cherry

5. 特殊字符

如果值中包含特殊字符,可以使用引号(单引号或双引号)将其括起来。双引号内的特殊字符会被转义,单引号内的则不会。

key1: "value with \"special\" characters"
key2: 'value with ''special'' characters'

6. 锚点和别名

YAML支持使用锚点(&)和别名(*)来复用数据。

defaults: &defaults
  adapter: postgres
  host: localhost

development:
  database: dev
  <<: *defaults

test:
  database: test
  <<: *defaults

三、YAML进阶语法

1. 复合结构

YAML支持将数组和对象嵌套使用,构建更复杂的数据结构。

users:
  - id: 1
    name: Alice
    emails:
      - alice@example.com
      - alice.work@example.com
  - id: 2
    name: Bob
    emails:
      - bob@example.com

2. 标签

YAML支持使用标签来指定数据的类型。例如,使用!!str可以显式地将值指定为字符串类型,使用!!int可以将其指定为整数类型。

explicit_string: !!str 123
explicit_integer: !!int "123"

3. 流式集合

YAML支持使用流式集合语法来表示数组或列表,这在某些情况下可以使语法更简洁。

fruits: [apple, banana, cherry]

4. 合并键

YAML的合并键(<<)允许你将一个映射的内容合并到另一个映射中。这在配置文件中特别有用,可以避免重复配置。

defaults: &defaults
  color: red
  size: large

item1:
  name: ball
  <<: *defaults

item2:
  name: shirt
  <<: *defaults

四、YAML使用注意事项

  1. 避免使用制表符

如前所述,YAML文件应使用空格进行缩进,避免使用制表符,以免因系统差异导致解析错误。

  1. 注意冒号后的空格

YAML语法中,冒号后面必须跟一个空格,否则会导致解析错误。

  1. 字符串引号的一致性

如果字符串值中包含引号,应确保使用的引号类型一致,或者使用转义字符。

  1. 锚点和别名的使用

锚点和别名是YAML中的高级特性,可以使数据复用更加简洁。但是,过度使用可能会使文件变得难以阅读和理解,因此应适度使用。

五、YAML工具

  1. YAML解析器

有许多语言和库提供了YAML解析器,可以将YAML文件解析为相应的数据结构。例如,Python中的PyYAML库和JavaScript中的js-yaml库。

  1. YAML格式化工具

YAML格式化工具可以帮助你格式化YAML文件,使其更加易读和美观。一些集成开发环境(IDE)和代码编辑器(如VS Code)提供了内置的YAML格式化支持。

  1. YAML验证工具

YAML验证工具可以帮助你检查YAML文件的语法是否正确。这对于排查因语法错误导致的问题非常有用。

六、YAML在前端开发中的应用

YAML在前端开发中的应用主要体现在配置文件和静态数据上。例如,一些前端项目使用YAML格式的配置文件来管理项目的配置信息,如环境变量、构建选项等。此外,YAML还可以用作静态数据源,通过解析YAML文件来生成页面内容。

相关文章
|
4月前
|
XML C语言 数据格式
yaml基本语法
yaml基本语法
79 0
|
4月前
|
XML Java 数据格式
SpringBoot中yaml格式、语法规则及数据读取方式(3种)
SpringBoot中yaml格式、语法规则及数据读取方式(3种)
518 0
|
3月前
|
敏捷开发 缓存 安全
阿里云云效产品使用问题之手动触发流水线的YAML语法该怎么写
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
3月前
|
XML 数据格式
yaml基本语法和yaml数据格式,ymal对象写法,数组写法
yaml基本语法和yaml数据格式,ymal对象写法,数组写法
|
4月前
|
Java 数据格式 Spring
详解YAML语法及占位符语法
设计了一个YAML数据结构来表示家庭信息,包括家庭名、父亲、母亲和孩子。父亲有名字和年龄,母亲有别名,孩子有名字、年龄和朋友列表,每个朋友有爱好和性别。字符串可以用单引号或双引号,双引号会转义特殊字符。YAML支持松散的键绑定。Spring Boot配置文件中,占位符可用于设置随机数,如${random.int},并可提供默认值,如${family.father.name:zimug}。
172 0
|
4月前
|
存储 JSON JavaScript
【YAML语法规范指南】从入门到精通,揭秘神秘语法,引领配置文件解析指南(基础结构篇)
"YAML Ain't Markup Language"(简称YAML)是一种专为人类设计的数据序列化语言,适用于多种现代编程语言,可广泛应用于各类日常任务。它是一种以人类可读形式呈现的、适用于多种语言的Unicode数据序列化标准。它基于敏捷编程中常见的本地数据结构,广泛应用于配置文件、互联网消息传递、对象持久化以及数据审计等多个领域。遵循Unicode标准、
577 8
【YAML语法规范指南】从入门到精通,揭秘神秘语法,引领配置文件解析指南(基础结构篇)
|
XML 运维 Java
SpringBoot中Yaml语法和JSR303数据校验《第三课》
SpringBoot中Yaml语法和JSR303数据校验《第三课》
171 0
|
XML JSON 数据格式
yaml语法
yaml语法
|
XML JSON Java
Spring Boot配置文件和yaml语法
Spring Boot配置文件和yaml语法
Spring Boot配置文件和yaml语法