You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查找以特定前缀开头且键名任意位置含指定值的Redis键?

在Redis中查找特定前缀且包含指定字符串的键

核心匹配逻辑

你可以通过Redis的通配符匹配语法实现需求,对应的匹配模式为:

travelpayouts-special-offers---*locale=en*

这个模式的作用:

  • travelpayouts-special-offers---:严格匹配键的固定前缀
  • *:匹配任意长度的任意字符(包括空字符),前后各加一个*就能实现locale=en在键名任意位置出现的匹配要求

具体执行命令

1. 测试环境用KEYS快速查询

如果是测试环境或者Redis数据集较小,直接用KEYS命令即可一次性获取结果:

KEYS "travelpayouts-special-offers---*locale=en*"

该命令会直接返回所有符合条件的键,完全匹配你列出的三个示例键。

2. 生产环境用SCAN避免阻塞

由于KEYS会遍历整个Redis键空间,数据量大时会阻塞服务,生产环境推荐用SCAN分批迭代查询:

SCAN 0 MATCH "travelpayouts-special-offers---*locale=en*" COUNT 100
  • 0:首次查询的起始游标,后续每次用返回的游标值继续迭代
  • COUNT 100:提示Redis每次返回的键数量(非严格限制)
  • 重复执行命令直到返回的游标值为0,即完成所有符合条件键的遍历

匹配有效性验证

上述模式可以完美匹配你给出的所有示例键:

  • travelpayouts-special-offers---origin=MOW-destination=MCX-locale=en
  • travelpayouts-special-offers---origin=MOW-locale=en-destination=MCX
  • travelpayouts-special-offers---locale=en-origin=MOW-destination=MCX

内容的提问来源于stack exchange,提问作者JamesJGoodwin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 17:20:35