YAML,linting - 语法错误 - 未知转义字符'

YAML, linting - syntax error - unknown escape character '

您好开发者社区!

我想就以下问题寻求帮助,我有以下 YAML 数据:

---
# yamllint disable rule:indentation rule:empty-lines
                      config_nsapp_cs_policy:
                      nsapp_cs_policy:

                          - policyname:                "url_app_preprd"
                            rule:                      "URL == \'/string/*\'"

尝试对 YAML 文件 运行 YAML lint 时,出现以下错误:

  7:69      error    syntax error: found unknown escape character "'" (syntax)

是否可以为这个特定的linting规则定义一个例外规则(忽略'single quote'中有问题的内容)?我在考虑完全禁用/忽略整个文件的 YAML linting,但这不是最好的方法。我不知道单引号匹配的是哪个 YAML linting 规则。该行中应包含单引号。

非常感谢您!

这不是 linter 错误,这是解析器错误。您输入的 YAML 无效,因为转义序列 \' 未在 YAML 中定义。

如果标量内容应仅包含单引号,请执行

    rule: "URL == '/string/*'"

如果标量内容也应包含反斜杠,则执行

    rule: "URL == \'/string/*\'"

您可以使用块标量来避免转义反斜杠:

    rule: >-
      URL == \'/string/*\'