Yml语法学习

1、在线练习网站:  http://nodeca.github.io/js-yaml/(YAML转化JSON网页中进行上手练习)

YAML全称是”YAML Ain’t a Markup Language”(YAML不是一种置标语言)的递归缩写。
在开发的这种语言时,YAML 的意思其实是:”Yet Another Markup Language”(仍是一种置标语言)。

2、基本语法:  

  • 1、大小写敏感
  • 2、使用缩进表示层级关系
  • 3、禁止使用tab缩进,只能使用空格键
  • 4、缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级。
  • 5、使用#表示注释
  • 6、字符串可以不用引号标注
  • 7、双引号"":不会转义字符串里面的特殊字符,特殊字符作为本身想表示的意思。
  • 8、单引号'':会将字符串里面的特殊字符转义为字符串处理
  • 9、|:使用|标注的文本内容缩进表示的块,可以保留块中已有的回车换行
  • 10、+表示保留文字块末尾的换行,-表示删除字符串末尾的换行。
  • 11、>:使用 > 标注的文本内容缩进表示的块,将块中回车替换为空格,最终连接成一行
  • 12、使用 & 定义数据锚点(即要复制的数据),使用 * 引用锚点数据(即数据的复制目的地)
  • 13、使用 iso-8601 标准表示日期
  • date: 2018-01-01t16:59:43.10-05:00

3、三种数据结构

  • 1、map,散列表

使用冒号(:)表示键值对,同一缩进的所有键值对属于一个map,示例:

# YAML表示
age : 12
name : huang

# 对应的Json表示
{'age':12,'name':'huang'}

也可以将一个map写在一行:

# YAML表示
{age:12,name:huang}

# 对应的Json表示
{'age':12,'name':'huang'}
  • 2、list,数组

使用连字符(-)表示:

# YAML表示
- a
- b
- 12

# 对应Json表示
['a','b',12]

也可以写在一行

# YAML表示
[a,b,c]

# 对应Json表示
[ 'a', 'b', 'c' ]
  • 3、scalar,纯量

数据最小的单位,不可以再分割。
原文:https://blog.csdn.net/vincent_hbl/article/details/75411243
 

4、数据结构嵌套

1、map嵌套map

# YAML表示 websites: YAML: yaml.org
 Ruby: ruby-lang.org
 Python: python.org
 Perl: use.perl.org

# 对应Json表示
{ websites: { YAML: 'yaml.org',
     Ruby: 'ruby-lang.org',
     Python: 'python.org',
     Perl: 'use.perl.org' } }

2、map嵌套list

# YAML表示
languages:
 - Ruby
 - Perl
 - Python 
 - c

# 对应Json表示
{ languages: [ 'Ruby', 'Perl', 'Python', 'c' ] }

 

3、list嵌套list

# YAML表示
-
  - Ruby
  - Perl
  - Python
-
  - c
  - c++
  - java

# 对应Json表示
[ [ 'Ruby', 'Perl', 'Python' ], [ 'c', 'c++', 'java' ] ]

4、list嵌套map

# YAML表示
-
  id: 1
  name: huang
-
  id: 2
  name: liao

# 对应Json表示
[ { id: 1, name: 'huang' }, { id: 2, name: 'liao' } ]
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值