YAML中多⾏字符串的配置⽅法
有时候我们会在配置⽂件中配置⼀段⽂字说明,这种时候通常会出现两种需求:
1. ⽂字中可能出现段落,希望在配置中按段落⽅式编写,显⽰打印的时候也能出现段落换⾏。
2. ⽂字很长,为⽅便编辑,可能在配置⽂件中分段写,但是显⽰的时候不喜欢出现配置中的段落换⾏。
简单的说,就是:
1. 配置与显⽰,都严格按段落展⽰
2. 配置按段落,显⽰不需要按段落
假设,我们需要配置这样⼀段⽂字:
I am a coder.My blog is didispace.
下⾯,就针对上⾯的两种情况来看看可以怎么来实现:
配置与显⽰,都严格按段落展⽰
这个需求下,我们希望配置和显⽰都按句⼦换⾏,就是这样:
I am a coder.
My blog is didispace.
⽅法⼀:直接使⽤\n来换⾏
这样写:
string: "I am a coder.\n\
My blog is didispace."
最终输出:
I am a coder.
My blog is didispace.字符串截取第几行
通过\n在显⽰的时候换⾏,通过配置⾏末的\让这个字符串换⾏继续写(这个必须有,如果没有第⼆⾏⾏⾸会多⼀个空格)。
注意:这⾥必须使⽤双引号来定义字符串,不能⽤单引号。因为单引号是不⽀持\n换⾏的。
⽅法⼆:使⽤|、|+、|-
在⽅法⼀种,其实我们在⽂字中加⼊了⼏个转义符号,其实对于阅读并不⽅便。在⽅法⼆中,将介绍更适合阅读的⼏种形式:
string: |
I am a coder.
My blog is didispace.
string: |+
I am a coder.
My blog is didispace.
string: |-
I am a coder.
My blog is didispace.
如上⾯⼀共有三种配置都会⾃动按配置中所写的换⾏来换⾏,但是在⽂末会有⼀些区别,有的会增加⼀个空⾏,有的不会,有的会新增两个空⾏,具体说明如下:
|:⽂中⾃动换⾏ + ⽂末新增⼀空⾏
|+:⽂中⾃动换⾏ + ⽂末新增两空⾏
|-:⽂中⾃动换⾏ + ⽂末不新增⾏
配置按段落,显⽰不需要按段落
这个需求下,我们希望配置⾥是按⾏写的,但是显⽰是如下⾯这样在⼀⾏的:
I am a coder.My blog is didispace.
⽅法⼀:直接在字符串中换⾏写
最粗暴的写法,反正不⽤换⾏,那就直接写了:
string: 'I am a coder.
My blog is didispace.'
这⾥不论⽤双引号还是单引号都是可以的。因为不存在需要转移的内容,所以总体还算清晰。
⽅法⼆:使⽤>、>+、>-
⽐较好的表述⽅式就是使⽤>、>+、>-来定义,⽐如下⾯这⼏种:
string: >
I am a coder.
My blog is didispace.
string: >+
I am a coder.
My blog is didispace.
string: >-
I am a coder.
My blog is didispace.
这三种都不会对配置中的换⾏进⾏实际换⾏,但是依然在⽂末的处理会有⼀些⼩区别,具体如下:>:⽂中不⾃动换⾏ + ⽂末新增⼀空⾏
>+:⽂中不⾃动换⾏ + ⽂末新增两空⾏
>-:⽂中不⾃动换⾏ + ⽂末不新增⾏
欢迎关注我的:程序猿DD,获得独家整理的学习资源和⽇常⼲货推送。
如果您对我的专题内容感兴趣,也可以关注我的博客:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。