有时候我们会在配置文件中配置一段文字说明,这种时候通常会出现两种需求:

  1. 文字中可能出现段落,希望在配置中按段落方式编写,显示打印的时候也能出现段落换行。
  2. 文字很长,为方便编辑,可能在配置文件中分段写,但是显示的时候不喜欢出现配置中的段落换行。

简单的说,就是:

  1. 配置与显示,都严格按段落展示
  2. 配置按段落,显示不需要按段落

假设,我们需要配置这样一段文字:

  1. I am a coder.My blog is didispace.com.

下面,就针对上面的两种情况来看看可以怎么来实现:

配置与显示,都严格按段落展示

这个需求下,我们希望配置和显示都按句子换行,就是这样:

  1. I am a coder.
  2. My blog is didispace.com.

方法一:直接使用\n来换行

这样写:

  1. string: "I am a coder.\n\
  2. My blog is didispace.com."

最终输出:

  1. I am a coder.
  2. My blog is didispace.com.

通过\n在显示的时候换行,通过配置行末的\让这个字符串换行继续写(这个必须有,如果没有第二行行首会多一个空格)。

注意:这里必须使用双引号来定义字符串,不能用单引号。因为单引号是不支持\n换行的。

方法二:使用|+|-

在方法一种,其实我们在文字中加入了几个转义符号,其实对于阅读并不方便。在方法二中,将介绍更适合阅读的几种形式:

  1. string: |
  2. I am a coder.
  3. My blog is didispace.com.
  4. string: |+
  5. I am a coder.
  6. My blog is didispace.com.
  7. string: |-
  8. I am a coder.
  9. My blog is didispace.com.

如上面一共有三种配置都会自动按配置中所写的换行来换行,但是在文末会有一些区别,有的会增加一个空行,有的不会,有的会新增两个空行,具体说明如下:

  • |:文中自动换行 + 文末新增一空行
  • |+:文中自动换行 + 文末新增两空行
  • |-:文中自动换行 + 文末不新增行

配置按段落,显示不需要按段落

这个需求下,我们希望配置里是按行写的,但是显示是如下面这样在一行的:

  1. I am a coder.My blog is didispace.com.

方法一:直接在字符串中换行写

最粗暴的写法,反正不用换行,那就直接写了:

  1. string: 'I am a coder.
  2. My blog is didispace.com.'

这里不论用双引号还是单引号都是可以的。因为不存在需要转移的内容,所以总体还算清晰。

方法二:使用>>+>-

比较好的表述方式就是使用>>+>-来定义,比如下面这几种:

  1. string: >
  2. I am a coder.
  3. My blog is didispace.com.
  4. string: >+
  5. I am a coder.
  6. My blog is didispace.com.
  7. string: >-
  8. I am a coder.
  9. My blog is didispace.com.

这三种都不会对配置中的换行进行实际换行,但是依然在文末的处理会有一些小区别,具体如下:

  • >:文中不自动换行 + 文末新增一空行
  • >+:文中不自动换行 + 文末新增两空行
  • >-:文中不自动换行 + 文末不新增行

欢迎关注我的公众号:程序猿DD,获得独家整理的学习资源和日常干货推送。

如果您对我的专题内容感兴趣,也可以关注我的博客:didispace.com

YAML中多行字符串的配置方法的更多相关文章

  1. java中常用的字符串的截取方法

    java中常用的字符串的截取方法   1.length() 字符串的长度 例:char chars[]={'a','b'.'c'}; String s=new String(chars); int l ...

  2. 简介Python中用于处理字符串的center()方法

    简介Python中用于处理字符串的center()方法 这篇文章主要介绍了简介Python中用于处理字符串的center()方法,是Python入门中的基础知识,需要的朋友可以参考下 center() ...

  3. js中多行字符串拼接

    前言 我们会经常遇到这样的场景,需要拼接多行字符串,在字符串中动态插入一些数据以达到业务的需求.但是js中并没有标准的多行编辑的函数,于是聪明的程序员们便脑洞大开,书写出许多有趣的方法. 1 2 3 ...

  4. 如何使用poi在word表格中插入行的4种方法

    本文记录了,在word表格中插入新行的几种方法.直接上代码说明 table.addNewRowBetween 没实现,官网文档也说明,只有函数名,但没具体实现,但很多文章还介绍如何使用这个函数,真是害 ...

  5. 命令行执行php脚本中的$argv和$argc配置方法

    在实际工作中有可能会碰到需要在nginx命令行执行php脚本的时候,当然你可以去配置一个conf用外网访问. 在nginx命令行中 使用 php index.php 就可以执行这个index.php脚 ...

  6. centos6.5中的cron计划任务配置方法

    1.#crontab -u <-l, -r, -e> -u指定一个用户-l列出某个用户的任务计划-r删除某个用户的任务-e编辑某个用户的任务 2. cron文件语法与写法 可用cronta ...

  7. Java Web项目中连接Access数据库的配置方法

    本文是对前几天的"JDBC连接Access数据库的几种方式"这篇的升级.因为在做一些小项目的时候遇到的问题,因此才决定写这篇博客的.昨天已经将博客公布了.可是后来经过一些验证有点问 ...

  8. python安装MySQLdb:在windows下或linux下(以及eclipse中pydev使用msqldb的配置方法)

    写的非常好,可以解决问题: windows下:http://blog.csdn.net/wklken/article/details/7253245 linux下:http://blog.csdn.n ...

  9. JS中数组和字符串具有的方法,以及substring,substr和slice的用法与区别

     String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 length 字符串的长度 prototype 允许您向对象添加属性和方法 String 对象方法 方法 描述 ...

随机推荐

  1. 整数拆分-dp问题

    Integer Partition In number theory and combinatorics, a partition of a positive integer n, also call ...

  2. git pull 显示的冲突---解决办法git stash

    git pull:显示本地仓库与远程仓库有冲突 Please, commit your changes or stash them before you can merge. Aborting 解决办 ...

  3. linux安装swoole扩展

    1.首先我们要安装swoole扩展的话,需要把它的包下载下来,下载地址是: https://github.com/swoole/swoole-src 2.下载下来之后进行解压: unzip swool ...

  4. ssm框架下怎么批量删除数据?

    ssm框架下批量删除怎么删除? 1.单击删除按钮选中选项后,跳转到js函数,由函数处理 2. 主要就是前端的操作 js 操作(如何全选?如何把选中的数据传到Controller中) 3.fun()函数 ...

  5. 吴裕雄--天生自然KITTEN编程:躲迷藏

  6. 云服务器 ECS--查找公网ip使用终端连接云服务

    前段时间购买了阿里云服务器,购买之后一直没用使用,今天来操作一波,可谓一波三折,只能说,不看他们的操作指南你可能连地方都找不到,所以,在这里,我想给初次购买阿里云服务的童鞋门,写写我是怎么使用阿里云服 ...

  7. figure图像

    import matplotlib.pyplot as plt import numpy as np x=np.linspace(-3,3,50) y1=x*2+1 y2=x**2 plt.plot( ...

  8. 推拿O2O 想说爱你还不容易

    想说爱你还不容易" title="推拿O2O 想说爱你还不容易"> <屌丝男士>第四季最后一集里,乔杉终于圆了"大保健"的梦想,可惜 ...

  9. 基于物理的渲染——间接光照

    在前面的文章中我们已经给出了基于物理的渲染方程: 并介绍了直接光照的实现.然而在自然界中,一个物体不会单独存在,光源会照射到其他的物体上,反射的光会有一部分反射到物体上.为了模拟这种环境光照的形式,我 ...

  10. vue项目实战

    本篇文章主要介绍了vue的环境配置,vue项目的目录结构以及在开发vue项目中问题的一些解决方案. 环境配置及目录结构 1.安装node.js(http://www.runoob.com/nodejs ...