2017-05-08 381 views
1

我想在多行字符串中使用\n字符,但YAML不允許我使用\n字符。我如何使用\n字符。Yaml多行字符串中的文件轉義字符

我YAML:

treeroot: 
    branch1: 
     name: > 
      hello my friend\n how are you ? 
      i am fine and you ?\n 
      yes\nthanks 
     branch1-1: 
      name: Node 1-1 
    branch2: 
     name: Node 2 
     branch2-1: 
      name: Node 2-1 

我知道,我們可以使用\n字符單行模式,但我想多使用它。

回答

0

在YAML中沒有「單線」模式。你有代表字符串的標量,它們可以是簡單的(不含引號),單引號和雙引號。除此之外,以塊形式,你有文字和摺疊的風格。

文字和摺疊樣式總是多行的(假設您用|>來計算行),但其他標量也可以是多行的。在後一種情況下,字符串中的雙重換行將被轉換爲換行符,並將其他換行符轉換爲空格。由於用反斜槓在雙引號字符串中只允許以下YAML是你需要的內容:

treeroot: 
    branch1: 
     name: "hello my friend\n how are you ? 
      i am fine and you ?\n 
      yes\nthanks" 
     branch1-1: 
      name: Node 1-1 
    branch2: 
     name: Node 2 
     branch2-1: 
      name: Node 2-1 

彷彿指定爲

"hello my friend\n how are you ? i am fine and you ?\n yes\nthanks" 
第一個鍵「名」的值是相同的