博客
关于我
编程杂项--yml
阅读量:512 次
发布时间:2019-03-07

本文共 1162 字,大约阅读时间需要 3 分钟。

YAML语言基础教程

简介

YAML(Yet Another Mark-up Language)是一种轻量级的标记语言,广泛应用于配置文件中。与JSON、XML等其他标记语言相比,YAML更适合用于数据配置,数据为中心,具有简洁易读的特点。

YAML基本规则

YAML具有以下基本规则:

  • 大小写敏感:键和值的大小写会影响结果。
  • 缩进表示层级关系:只能使用空格键进行缩进,禁止使用Tab键。
  • 缩进无限制:只要元素对齐即表示同一层级。
  • 注释方式:使用#表示注释。
  • 字符串处理:字符串可以不需要引号标注。

YAML数据类型

YAML支持以下数据类型:

  • 对象(映射):键值对集合,如 {key: value}
  • 数组(列表):按顺序排列的值,如 [value1, value2, value3]
  • 纯量:不可再分的单个值,包括字符串、布尔值、整数、浮点数、Null、时间、日期等。

YAML格式

纯量

纯量是YAML的基础,不可再分的值,常见类型包括:

  • 字符串:不需要引号包裹,可拆分多行。
str: 这是一行字符串# 转为JSON:{ "str": "这是一行字符串" }
  • 布尔值truefalse
key1: truekey2: false
  • 整数:直接写出数字。
num: 42
  • 浮点数:支持科学计数法。
num: 3.14num: 6.8523015e+5
  • Null:表示缺失值。
null: null
  • 时间日期:可以通过特定格式化方式表示。
对象

对象键值对的表示方式:

key:  key1: value1  key2: value2

或者:

key: {key1: value1, key2: value2}
数组

数组表示方式:

  • 使用-表示单项:
pets:  - cat  - dog  - pig
  • 使用方括号表示数组:
pets: [cat, dog, pig]

支持多维数组:

array:  - [A, B, C]
引用

YAML支持锚点与别名,用于引用:

  • &:创建锚点标记。
  • <<:合并当前数据。
  • *:引用锚点。

示例:

name: &a yamlbook: *abooks:  - java  - *a  - python

转换为:

name: yamlbook: yamlbooks:  - java  - yaml  - python

高级内容

分段处理

多个文档可在一个YAML文件中使用---分隔:

spring:  profiles:    active: dev---spring:  profiles:    server:      port: 8080---spring:  profiles:    prod:      port: 8082

通过分段处理,可以管理多个配置文件。

转载地址:http://zntjz.baihongyu.com/

你可能感兴趣的文章
NPM使用前设置和升级
查看>>
npm入门,这篇就够了
查看>>
npm切换到淘宝源
查看>>
npm切换源淘宝源的两种方法
查看>>
npm前端包管理工具简介---npm工作笔记001
查看>>
npm升级以及使用淘宝npm镜像
查看>>
npm发布包--所遇到的问题
查看>>
npm发布自己的组件UI包(详细步骤,图文并茂)
查看>>
npm和yarn清理缓存命令
查看>>
npm和yarn的使用对比
查看>>
npm如何清空缓存并重新打包?
查看>>
npm学习(十一)之package-lock.json
查看>>
npm安装 出现 npm ERR! code ETIMEDOUT npm ERR! syscall connect npm ERR! errno ETIMEDOUT npm ERR! 解决方法
查看>>
npm安装crypto-js 如何安装crypto-js, python爬虫安装加解密插件 找不到模块crypto-js python报错解决丢失crypto-js模块
查看>>
npm安装教程
查看>>
npm报错Cannot find module ‘webpack‘ Require stack
查看>>
npm报错Failed at the node-sass@4.14.1 postinstall script
查看>>
npm报错File to import not found or unreadable: @/assets/styles/global.scss.
查看>>
npm报错unable to access ‘https://github.com/sohee-lee7/Squire.git/‘
查看>>
npm版本过高问题
查看>>