2013-12-22 61 views
1

我不明白爲什麼某些redis KEYS命令的行爲如此。redis keys命令不適用於某些字符

這將返回所有的鍵開始與「字符串:術語」:

keys "tag:[term]*" 

當我(甚至是逃避吧),它返回包含.js所有鍵把.js - 的第二部分「正則表達式」我想包括:

keys "tag:[term\.com]*"; 
keys "tag:[term.com]*"; 

對於一些背景下,documentation意味着方括號內的正則表達式:

H [AE] LLO匹配hello喂,但不是鑫隆

回答

1

鍵命令不使用正則表達式但glob-style pattern matching(與基本的Unix外殼兼容)。

keys "tag:[term]*" 

確實比「以tag:term開頭的所有鍵」返回更多的鍵。它返回所有以標記開始的鍵:在['t','e','r','m']之間加上單個字符。

要返回起始標籤的所有鍵:看,你需要使用「標籤:術語*」

的文檔不意味着正則表達式,只是通配符式樣的模式。

+0

啊,好的謝謝。任何想法爲什麼這段時間會拋出一些東西? –

+0

。字符與glob沒有特殊的意義。 –