逃脱 '。' 在 JMESPath 中

Tho*_*sen 2 jmespath

我有一个 JSON 对象,我希望在其中使用 JMESPath 检索名称中包含点的属性的值:

{
  "a": {
    "b.c": "value"
  }
}
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我希望检索value。我怎样才能做到这一点?

JAp*_*nte 6

我只是想通了。我正在使用 python,但我认为解决方案对于任何实现都是相同的。基本上,任何带有特殊字符的键名都需要在搜索字符串中加引号。以你的例子:

import jmespath

test_dictionary = {
  "a": {
    "b.c": "value"
  }
}

jmespath.compile('a."b.c"').search(test_dictionary)
Run Code Online (Sandbox Code Playgroud)

结果: 'value'