yaml的简单学习
参考http://www.ruanyifeng.com/blog/2016/07/yaml.html
基本语法规则如下。
• 大小写敏感
• 使用缩进表示层级关系
• 缩进时不允许使用Tab键,只允许使用空格。
• 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
支持的数据结构有三种。
• 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
• 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
• 纯量(scalars):单个的、不可再分的值
下面只记录一些比较特别的表示,详细内容可看链接
1.null用~表示,如
parent: ~
2.时间,日期
时间采用 ISO8601 格式:
iso8601: --14t21::43.10-:
转成JavaScript为:
{ iso8601: new Date('2001-12-14t21:59:43.10-05:00') }
日期采用复合 iso8601 格式的年、月、日表示;
date: --
转为 JavaScript 如下:
{ date: new Date('1976-07-31') }
3.强制转换类型——使用两个感叹号
e: !!str
f: !!str true
转为 JavaScript 如下
{ e: '', f: 'true' }
4.字符串
1)字符串默认不使用引号表示,如:
str: 这是一行字符串
转为 JavaScript 如下:
{ str: '这是一行字符串' }
2)如果字符串之中包含空格或特殊字符,需要放在引号之中,如:
str: '内容: 字符串'
转为 JavaScript 如下:
{ str: '内容: 字符串' }
3)单引号之中如果还有单引号,必须连续使用两个单引号转义。
str: 'labor''s day'
4)字符串可以写成多行,从第二行开始,必须有一个单空格缩进。换行符会被转为空格。
str: 这是一段
多行
字符串
转为 JavaScript 如下:
{ str: '这是一段 多行 字符串' }
5)多行字符串可以使用 | 保留换行符,也可以使用 > 折叠换行。(没有则是空格连成一句)
this: |
Foo
Bar
that: >
Foo
Bar
转为 JavaScript 代码如下:
{ this: 'Foo\nBar\n', that: 'Foo Bar\n' }
6) +表示保留文字块末尾的换行,-表示删除字符串末尾的换行。
s1: |
Foo
s2: |+
Foo
s3: |-
Foo
转为 JavaScript 代码如下:
{ s1: 'Foo\n', s2: 'Foo\n\n\n', s3: 'Foo' }
5.引用
锚点&和别名*,可以用来引用。
defaults: &defaults #这个冒号后面必须是一个空格
adapter: postgres
host: localhost development:
database: myapp_development
<<: *defaults test:
database: myapp_test
<<: *defaults
&用来建立锚点(defaults),<<表示合并到当前数据,*用来引用锚点
所以等同于下面的代码:
defaults:
adapter: postgres
host: localhost development:
database: myapp_development
adapter: postgres
host: localhost test:
database: myapp_test
adapter: postgres
host: localhost
另一个例子为:
- &showell Steve
- Clark
- Brian
- Oren
- *showell
转为 JavaScript 代码如下:
[ 'Steve', 'Clark', 'Brian', 'Oren', 'Steve' ]
yaml的简单学习的更多相关文章
- Vagrant 安装Oracle19c RAC测试环境的简单学习
1. 学习自网站: https://xiaoyu.blog.csdn.net/article/details/103135158 简单学习了下 能够将oracle RAC开起来了 但是 对后期的维护和 ...
- Log4j简单学习笔记
log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...
- shiro简单学习的简单总结
权限和我有很大渊源. 培训时候的最后一个项目是OA,权限那块却不知如何入手,最后以不是我写的那个模块应付面试. 最开始的是使用session装载用户登录信息,使用简单权限拦截器做到权限控制,利用资源文 ...
- CentOS 简单学习 firewalld的使用
1. centos7 开始 使用firewalld 代替了 iptables 命令工具为 firewall-cmd 帮助信息非常长,简单放到文末 2. 简单使用 首先开启 httpd 一般都自带安装了 ...
- Windows 下 Docker 的简单学习使用过程之一 dockertoolbox
1. Windows 下面运行 Docker 的两个主要工具1): Docker for Windows2): DockerToolbox区别:Docker For Windows 可以理解为是新一代 ...
- 在MVC中实现和网站不同服务器的批量文件下载以及NPOI下载数据到Excel的简单学习
嘿嘿,我来啦,最近忙啦几天,使用MVC把应该实现的一些功能实现了,说起来做项目,实属感觉蛮好的,即可以学习新的东西,又可以增加自己之前知道的知识的巩固,不得不说是双丰收啊,其实这周来就开始面对下载在挣 ...
- Linux——帮助命令简单学习笔记
Linux帮助命令简单学习笔记: 一: 命令名称:man 命令英文原意:manual 命令所在路径:/usr/bin/man 执行权限:所有用户 语法:man [命令或配置文件] 功能描述:获得帮助信 ...
- OI数学 简单学习笔记
基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\ ...
- mongodb,redis简单学习
2.mongodb安装配置简单学习 配置好数据库路径就可以mongo命令执行交互操作了:先将服务器开起来:在开个cmd执行交互操作 ...
随机推荐
- Android view显示在软键盘上方
给EditText外加一个ScrollView,将高度设置统一,并给ScrollView设置属性 android:fillViewport="true". 注:ScrollVie ...
- #WEB安全基础 : HTML/CSS | 0x1初识CSS
"我受够这些难看的网页了,我怎么才能让它变得好看点?"你说. 我答道:"看来你得学点CSS了" 学习这些东西只有一个原则,就是用你的脑袋想,用你的眼睛看,用的你 ...
- verilog实现红黄蓝三秒灯
代码如下 test.v文件 led.v文件 module test(); wire led_r,led_g,led_b; ; clk <= ~clk; led c1 ( .clk(clk), . ...
- git 入门教程之本地和远程仓库的本质
本地仓库和远程仓库在本质上没有太大区别,只不过一个是本地电脑,一个是远程电脑. 远程仓库不一定非得是 github 那种专门的"中央服务器",甚至局域网的另外一台电脑也可以充当&q ...
- pycharm 中按照文档引包方式,引包错误
* python使用pycharm ide,如果电脑上有多个解释器的,在项目解释器配置的应该是当前使用的解释器: * 可以把当前使用的解释器目录添加到系统环境变量中,这样就不会报错了 另外,如果目录中 ...
- 使用Visual Studio Team Services敏捷规划和项目组合管理(五)——组合管理
使用Visual Studio Team Services敏捷规划和项目组合管理(五)--组合管理 组合待办事项为产品所有者提供关于几个敏捷特性团队工作的洞察.产品所有者可以将高优先级的目标定义为Ep ...
- asp.net core 发布到 docker 容器时文件体积过大及服务端口的配置疑问
在 asp.net core 发布时,本人先后产生了3个疑问. 1.发布的程序为什么不能在docker容器中运行 当时在window开发环境中发布后,dotnet xxx.dll可以正常运行:但放入d ...
- 修改Windows默认远程端口号
1.定位注册表,[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp],右侧修改 ...
- 搭建windows测试环境的步骤
步骤:1.JDK安装 2.配置好JDK环境变量3.Tomcat安装4.将war包放在Tomcat的发布目录中webapps中,5.conf>server.xml里面设置默认解压,unpackW ...
- JavaScript -- 时光流逝(六):js中的正则表达式 -- RegExp 对象
JavaScript -- 知识点回顾篇(六):js中的正则表达式 -- RegExp 对象 1. js正则表达式匹配字符之含义 查找以八进制数 规定的字符. 查找以十六进制数 规定 ...