JSON.STRLEN

报告 key 中路径处 JSON 字符串的长度

语法

JSON.STRLEN key [path]

引入版本:1.0.0

复杂度摘要:O(1)

返回与给定路径表达式匹配的路径处的 JSON 字符串的长度。

示例

必需参数

key

是存储 JSON 类型值的 Redis 键。

可选参数

path

是

  • JSONPath 表达式
  • 根“$”,或以“$.”或“$[”开头的任何字符串。
  • 解析为 key 中的所有匹配位置。
  • 遗留路径表达式
  • 任何与上述 JSONPath 语法不匹配的字符串。
  • 允许省略前导“.”(例如,“name”和“.name”是等效的)。
  • 仅解析为 key 中的第一个匹配位置。

默认值:“.”(指向文档根目录的旧路径)。

示例

redis> JSON.SET doc $ '{"a":"foo", "nested": {"a": "hello"}, "nested2": {"a": 31}}' OK redis> JSON.STRLEN doc $..a 1) (整数) 3 2) (整数) 5 3) (nil)

Redis Software 与 Redis Cloud 兼容性

Redis
软件
Redis
Cloud
说明
✅ 支持
✅ 灵活且每年一次
✅ 免费和固定

返回值

RESP2

如果 path 是 JSONPath 表达式:

如果 path 是旧路径表达式:

  • 如果 key 不存在,则为 nil。
  • 如果 path 没有匹配项,则为 简单错误。
  • 如果第一个匹配不是字符串,则为 简单错误。
  • 整数回复:第一个匹配处的字符串长度。

RESP3

如果 path 是 JSONPath 表达式:

如果 path 是旧路径表达式:

  • 如果 key 不存在,则为 nil。
  • 如果 path 没有匹配项,则为 简单错误。
  • 如果第一个匹配不是字符串,则为 简单错误。
  • 整数回复:第一个匹配处的字符串长度。

参见

JSON.STRAPPEND | JSON.ARRLEN | JSON.OBJLEN

资料来源:Redis 官方 JSON.STRLEN 文档;中文内容参考 Redis 文档许可。