如何在YAML多行字符串中进行Unicode转义?

13

在 YAML 的多行字符串中,是否可以使用 Unicode 字符转义(例如 \u2009)?

this_escape_works: "foo\u2009bar"
this_escape_doesnt: >
  foo\u2009bar
1个回答

15
根据YAML1.2规范,标量的双引号样式如下所示:
  

它是唯一能够使用“\”转义序列表示任意字符串的样式。这种方式需要对“\”和“"”字符进行转义。

因此,折叠型标量不支持转义,您需要执行:

this_escape_works: "foo\u2009bar"
this_escape_doesnt: "foo\u2009bar\n"

请注意,与@nj_的说法相反,折叠指示符>(它不是运算符)通常不会将换行符转换为空格,当然也不会对最后一行的断行进行转换。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接