YAML中多行字符串的配置方法
有时候我们会在配置文件中配置一段文字说明,这种时候通常会出现两种需求:
- 文字中可能出现段落,希望在配置中按段落方式编写,显示打印的时候也能出现段落换行。
- 文字很长,为方便编辑,可能在配置文件中分段写,但是显示的时候不喜欢出现配置中的段落换行。
简单的说,就是:
- 配置与显示,都严格按段落展示
- 配置按段落,显示不需要按段落
假设,我们需要配置这样一段文字:
I am a coder.My blog is didispace.com.
下面,就针对上面的两种情况来看看可以怎么来实现:
配置与显示,都严格按段落展示
这个需求下,我们希望配置和显示都按句子换行,就是这样:
I am a coder.
My blog is didispace.com.
方法一:直接使用\n来换行
这样写:
string: "I am a coder.\n\
My blog is didispace.com."
最终输出:
I am a coder.
My blog is didispace.com.
通过\n在显示的时候换行,通过配置行末的\让这个字符串换行继续写(这个必须有,如果没有第二行行首会多一个空格)。
注意:这里必须使用双引号来定义字符串,不能用单引号。因为单引号是不支持\n换行的。
方法二:使用|、|+、|-
在方法一种,其实我们在文字中加入了几个转义符号,其实对于阅读并不方便。在方法二中,将介绍更适合阅读的几种形式:
string: |
I am a coder.
My blog is didispace.com.
string: |+
I am a coder.
My blog is didispace.com.
string: |-
I am a coder.
My blog is didispace.com.
如上面一共有三种配置都会自动按配置中所写的换行来换行,但是在文末会有一些区别,有的会增加一个空行,有的不会,有的会新增两个空行,具体说明如下:
|:文中自动换行 + 文末新增一空行|+:文中自动换行 + 文末新增两空行|-:文中自动换行 + 文末不新增行
配置按段落,显示不需要按段落
这个需求下,我们希望配置里是按行写的,但是显示是如下面这样在一行的:
I am a coder.My blog is didispace.com.
方法一:直接在字符串中换行写
最粗暴的写法,反正不用换行,那就直接写了:
string: 'I am a coder.
My blog is didispace.com.'
这里不论用双引号还是单引号都是可以的。因为不存在需要转移的内容,所以总体还算清晰。
方法二:使用>、>+、>-
比较好的表述方式就是使用>、>+、>-来定义,比如下面这几种:
string: >
I am a coder.
My blog is didispace.com.
string: >+
I am a coder.
My blog is didispace.com.
string: >-
I am a coder.
My blog is didispace.com.
这三种都不会对配置中的换行进行实际换行,但是依然在文末的处理会有一些小区别,具体如下:
>:文中不自动换行 + 文末新增一空行>+:文中不自动换行 + 文末新增两空行>-:文中不自动换行 + 文末不新增行
欢迎关注我的公众号:程序猿DD,获得独家整理的学习资源和日常干货推送。
如果您对我的专题内容感兴趣,也可以关注我的博客:didispace.com
YAML中多行字符串的配置方法的更多相关文章
- java中常用的字符串的截取方法
java中常用的字符串的截取方法 1.length() 字符串的长度 例:char chars[]={'a','b'.'c'}; String s=new String(chars); int l ...
- 简介Python中用于处理字符串的center()方法
简介Python中用于处理字符串的center()方法 这篇文章主要介绍了简介Python中用于处理字符串的center()方法,是Python入门中的基础知识,需要的朋友可以参考下 center() ...
- js中多行字符串拼接
前言 我们会经常遇到这样的场景,需要拼接多行字符串,在字符串中动态插入一些数据以达到业务的需求.但是js中并没有标准的多行编辑的函数,于是聪明的程序员们便脑洞大开,书写出许多有趣的方法. 1 2 3 ...
- 如何使用poi在word表格中插入行的4种方法
本文记录了,在word表格中插入新行的几种方法.直接上代码说明 table.addNewRowBetween 没实现,官网文档也说明,只有函数名,但没具体实现,但很多文章还介绍如何使用这个函数,真是害 ...
- 命令行执行php脚本中的$argv和$argc配置方法
在实际工作中有可能会碰到需要在nginx命令行执行php脚本的时候,当然你可以去配置一个conf用外网访问. 在nginx命令行中 使用 php index.php 就可以执行这个index.php脚 ...
- centos6.5中的cron计划任务配置方法
1.#crontab -u <-l, -r, -e> -u指定一个用户-l列出某个用户的任务计划-r删除某个用户的任务-e编辑某个用户的任务 2. cron文件语法与写法 可用cronta ...
- Java Web项目中连接Access数据库的配置方法
本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...
- python安装MySQLdb:在windows下或linux下(以及eclipse中pydev使用msqldb的配置方法)
写的非常好,可以解决问题: windows下:http://blog.csdn.net/wklken/article/details/7253245 linux下:http://blog.csdn.n ...
- JS中数组和字符串具有的方法,以及substring,substr和slice的用法与区别
String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 length 字符串的长度 prototype 允许您向对象添加属性和方法 String 对象方法 方法 描述 ...
随机推荐
- 吴裕雄--天生自然python学习笔记:编写网络爬虫代码获取指定网站的图片
我们经常会在网上搜索井下载图片,然而一张一张地下载就太麻烦了,本案例 就是通过网络爬虫技术, 一次性下载该网站所有的图片并保存 . 网站图片下载并保存 将指定网站的 .jpg 和 .png 格式的图片 ...
- Python类变量与实例变量及成员函数修饰方式说明(与Java定义方式进行类比)
Python类中的变量有类变量和实例变量之分. 类变量:变量绑定在类上,同一个类之间的共享变量,类比于Java中的静态变量static 公有变量定义 Java 的定义方式 class Test{ pu ...
- springboot中使用异步的常用两种方式及其比较
一般对于业务复杂的流程,会有一些处理逻辑不需要及时返回,甚至不需要返回值,但是如果充斥在主流程中,占用大量时间来处理,就可以通过异步的方式来优化.实现异步的常用方法远不止两种,但是个人经验常用的,好用 ...
- Python爬虫实战之爬取百度贴吧帖子
大家好,上次我们实验了爬取了糗事百科的段子,那么这次我们来尝试一下爬取百度贴吧的帖子.与上一篇不同的是,这次我们需要用到文件的相关操作. 本篇目标 对百度贴吧的任意帖子进行抓取 指定是否只抓取楼主发帖 ...
- 吴裕雄--天生自然KITTEN编程:掉金币
- rpm方式安装MySQL后在命令行登录报错:ERROR 1045 (28000): Unknown error 1045
1.通过https://mirrors.tuna.tsinghua.edu.cn镜像源安装了MySQL5.7.22 rpm -ivh --force --nodeps https://mirrors. ...
- 年薪5w和50w的人,区别到底在哪?
年薪5w和50w的人,区别到底在哪? 2017-02-22 阿青 360投资圈 文/ 阿青 许多人在职场摸爬滚打很多年并不顺利,薪酬一直上不去.职场鸡汤喝了不少,也掌握了不少职场技能,工作经验也颇为丰 ...
- swoole I/O 模型
I/O即Input/Output,输入和输出的意思.在计算机的世界里,涉及到数据交换的地方,比如磁盘.网络等,就需要I/O接口. 通常,I/O是相对的.比如说你打开浏览器,通过网络I/O获取我们网站的 ...
- sphinx + mysql 全文索引配置
参考地址 http://v9.help.phpcms.cn/html/2010/search_0919/35.html http://blog.sina.com.cn/s/blog_705e4fdc0 ...
- oracle监控参数
Sar –u 检查CPU的繁忙程度列说明Usr用户模式下cpu运行所占的百分比Sys系统模式下cpu运行所占的百分比Wio因为有进程等待块I/O而使cpu处于闲置状态所占百分比IdleCpu为闲置状态 ...