Ruby on rails Yaml gotcha';s、 在Yaml中存储某些类型的字符是否存在任何问题?

Ruby on rails Yaml gotcha';s、 在Yaml中存储某些类型的字符是否存在任何问题?,ruby-on-rails,yaml,Ruby On Rails,Yaml,我对yaml非常陌生,我只想知道我可以和不能在yaml中存储哪些字符 双引号等的转义字符是什么 我可以跨多行吗?基本上,您可以存储所有内容。引号不是问题,您可以在不带引号的情况下键入文本(对于不能随意合并的不可打印字符,有常见的转义序列)。这意味着纯数字文本被认为是一个数字,但是,同样,您可以添加引号或显式类型注释(我假设大多数库在必要时都这样做),例如!!str 100。此外,如果您希望包含注释符号(#),则必须添加引号 另一个问题是,某些字符串可能看起来更复杂的YAML(例如,感叹号的某些用

我对yaml非常陌生,我只想知道我可以和不能在yaml中存储哪些字符

双引号等的转义字符是什么


我可以跨多行吗?

基本上,您可以存储所有内容。引号不是问题,您可以在不带引号的情况下键入文本(对于不能随意合并的不可打印字符,有常见的转义序列)。这意味着纯数字文本被认为是一个数字,但是,同样,您可以添加引号或显式类型注释(我假设大多数库在必要时都这样做),例如
!!str 100
。此外,如果您希望包含注释符号(
#
),则必须添加引号

另一个问题是,某些字符串可能看起来更复杂的YAML(例如,感叹号的某些用法看起来像类型转换,冒号的某些用法看起来像单例关联表)。您可以通过使用仅由一行组成的“多行”字符串来避免这些问题。多行字符串存在并有两种风格,即保留换行符(
--
)和忽略除空行以外的换行符(
-->
,非常类似于标记)