Существуют некоторые тонкости, которые Джесси пропустит.
YAML (как и многие языки программирования) обрабатывает одинарные и двойные кавычки по-разному. Рассмотрим этот документ:
regexp: "\d{4}"
Это не удастся проанализировать с ошибкой, такой как:
обнаружил неизвестный escape-символ при разборе цитируемого скаляра в строке 1 столбца 9
Сравните это с:
regexp: '\d{4}'
Который будет правильно разбираться. Чтобы использовать символ обратной косой черты внутри строк в двойных кавычках, вам нужно их экранировать, например:
regexp: "\\d{4}"
Я также хотел бы выделить комментарий Стива о одиночных кавычках. Рассмотрите этот документ:
s1: "this\
is\
a\
test"
s2: 'this\
is\
a\
test'
При анализе вы обнаружите, что это эквивалентно:
s1: thisisatest
s2: "this\\ is\\ a\\ test"
Это прямой результат того факта, что YAML рассматривает строки в одинарных кавычках как литералы, в то время как строки в двойных кавычках подлежат расширению экранирующих символов.