Синтаксис YAML: | против >

YAML (YAML не является языком разметки) — это удобочитаемый формат сериализации данных, обычно используемый для файлов конфигурации и обмена данными. В YAML существует два разных способа представления многострочных строк: использование «|» символ или символ «>». В этой статье мы рассмотрим различия между этими двумя подходами и обсудим, когда использовать каждый из них.

Метод 1: символ вертикальной черты (|)
Значок “|” Символ используется в YAML для представления буквального блочного скаляра, что позволяет сохранять многострочные строки такими, какие они есть. При использовании «|» каждый разрыв строки в результирующей строке обозначается символом новой строки («\n»).

Пример:

message: |
  Hello,
  This is a multi-line
  message in YAML.

Метод 2: символ «больше чем» (>)
Символ «>», с другой стороны, используется для обозначения скаляра свернутого блока, что означает, что разрывы строк заменяются пробелами, за исключением пустых строк., которые свернуты в одно пространство. Это может быть полезно для форматирования длинных абзацев или переноса текста.

Пример:

message: >
  Hello, This is a folded
  multi-line message in YAML.

Метод 3: использование отступов
Другой подход к представлению многострочных строк в YAML — использование отступов без каких-либо специальных символов. В этом методе каждая новая строка имеет отступ в два или более пробела.

Пример:

message: This is a
  multi-line message
  using indentation.

Метод 4: экранирование символов новой строки
В YAML вы также можете использовать escape-последовательности для представления символов новой строки в однострочной строке. Используя escape-последовательность “\n”, вы можете разбить строку на несколько строк.

Пример:

message: "This is a\nmulti-line\nmessage using\nescape sequences."

Подводя итог, YAML предоставляет несколько способов представления многострочных строк. “|” символ сохраняет точные разрывы строк, символ «>» сворачивает текст с пробелами, отступы можно использовать без каких-либо специальных символов, а escape-последовательности допускают переводы строк в однострочную строку. Выбор метода зависит от конкретных требований и читаемости файла YAML.