【问题标题】:Search Redis for keys with a backslash在 Redis 中搜索带反斜杠的键
【发布时间】:2020-01-07 06:38:13
【问题描述】:

在 Redis 中,我有 target:frame:xyz12345target:frame:\xe3\x82\xa2\xe3\x82

之类的键

我可以搜索 KEYS target:frame:* 并获得所有结果,但如果我尝试 KEYS target:frame:\* 我没有得到任何结果。我尝试使用 KEYS target:frame:\\* 进行转义,但这也会产生(空列表或集合)。

如何在 Redis 中仅搜索带有反斜杠的键?

非常感谢。

【问题讨论】:

    标签: redis


    【解决方案1】:

    假设你在 redis-cli 中看到了这个,你看到的是转义的二进制数据。

    试试这个:KEYS "target:frame:\xe3*"。这将匹配所有以target:frame: 开头的键,后跟值为 0xE3 的字节

    【讨论】:

      【解决方案2】:

      使用KEYS target:frame:\\*。反斜杠用作转义字符。双反斜杠将反斜杠转义为文字反斜杠。

      【讨论】:

      • 感谢您的建议,但我忘了提及我尝试了该搜索,但它也失败了。很奇怪,我知道。干杯。
      • 我在 redis-cli 中测试过,它按预期工作。不过,LeoMurillo 可能会给出答案。如果您将二进制字符显示为转义码,则必须搜索这些字符。
      猜你喜欢
      • 2021-02-14
      • 1970-01-01
      • 2011-01-28
      • 1970-01-01
      • 2022-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-15
      相关资源
      最近更新 更多