【发布时间】:2018-10-26 15:40:01
【问题描述】:
我想为 redis KEYS/SCAN 命令定义以下类似 glob 的模式:
prefix:[^excludedPart]:suffix
以便以下内容匹配:
prefix:any:sufix
但这不会:
prefix:excludedPart:sufix
是否可以创建这样的模式?
是否可以不仅排除一个字符,还排除更长的子字符串?
我搜索了here,但找不到答案。
【问题讨论】:
标签: redis
我想为 redis KEYS/SCAN 命令定义以下类似 glob 的模式:
prefix:[^excludedPart]:suffix
以便以下内容匹配:
prefix:any:sufix
但这不会:
prefix:excludedPart:sufix
是否可以创建这样的模式?
是否可以不仅排除一个字符,还排除更长的子字符串?
我搜索了here,但找不到答案。
【问题讨论】:
标签: redis
首先 - 永远不要在生产中使用 KEYS...
其次,你可以用 Lua 来绕过这个泡菜。例如。 https://github.com/itamarhaber/redis-lua-scripts/blob/master/scanregex.lua
第三,但只有当你真的很无聊时,你才可以尝试开发一个模块来实现这一点。关于如何实现blocking KEYS 以及using regex for KEYS 的现有工作。
黑客愉快:)
【讨论】: