Validation YAML中映射键标识符中允许的字符?

Validation YAML中映射键标识符中允许的字符?,validation,yaml,Validation,Yaml,YAML中键(即示例:“值”中的示例)中允许和不允许哪些字符?任何字符(如果使用单引号“示例”或双引号“示例”正确引用)。请注意,密钥不必是标量(“示例”)。它可以是列表或映射。根据YAML 1.2规范,仅建议使用可打印字符,并排除显式控制字符(): 在构造键名时,需要避免YAML规范用于表示语法或特殊含义的字符(例如,“#”表示注释,“>”表示折叠,“-”表示列表等) 从本质上讲,需要使用YAML文档的任何代码(解析器/工具实现)都将留给您相对的编码约定(限制)。你越是坚持字母数字就越好;根据

YAML中键(即
示例:“值”
中的
示例
)中允许和不允许哪些字符?

任何字符(如果使用单引号“示例”或双引号“示例”正确引用)。请注意,密钥不必是标量(“示例”)。它可以是列表或映射。

根据YAML 1.2规范,仅建议使用可打印字符,并排除显式控制字符():

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

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


在将使用句点的命名空间语法映射到YAML时,将句点字符“.”转换为下划线字符“\u1”是我们与其他人的共同做法。有些人同样成功地使用了连字符,但我们在一些实现中看到它被误解。

这是否意味着它包括数字?@jpganz18,是的,它们甚至不需要被引用或转义。试试看。