Map密钥标识符YAML中允许的字符

Mat*_*art 27 validation yaml

我目前正在与YAML合作,我想知道YAML中的哪些字符是不允许的?

例:

example

我指的是' example: "Value"'.

谢谢.

小智 35

根据YAML 1.2规范,只建议使用可排除显式控制字符的可打印字符(参见此处):

在构造键名时,YAML规范中包含字符.用于表示语法或特殊含义需要避免(例如'#'表示注释,'>表示折叠,' - '表示列表等).

从本质上讲,您需要使用需要使用YAML文档的任何代码(解析器/工具实现)来保留相关的编码约定(限制).你坚持使用字母数字越多越好; 根据我们的经验,下划线与我们遇到的大多数工具一起使用.

与我们合作的其他人共同转换时期字符"." 在将使用句点的命名空间语法映射到YAML时,使用下划线字符"_".有些人已经成功地使用了连字符,但我们已经看到它在某些实现中被误解了.

  • 在使用现有YAML工具方面,这个答案非常实用. (4认同)

And*_*rey 11

任何字符(如果由单引号'example'或双引号"example"正确引用).请注意,密钥不必是标量('示例').它可以是列表或地图.

  • @ jpganz18,是的,甚至不需要引号或转义它们。在http://www.yamllint.com/上尝试一下。 (2认同)