GETRANGE:获取字符串值指定索引范围上的内容

通过使用 GETRANGE 命令,用户可以获取字符串值从 start 索引开始,直到 end 索引为止的所有内容:

  1. GETRANGE key start end

GETRANGE 命令接受的是闭区间索引范围,也即是说,位于 start 索引和 end 索引上的值也会被包含在命令返回的内容当中。

举个例子,以下代码展示了如何使用 GETRANGE 命令去获取 message 键的值的不同部分:

  1. redis> GETRANGE message 0 4 -- 获取字符串值索引 0 至索引 4 上的内容
  2. "hello"
  3.  
  4. redis> GETRANGE message 6 10 -- 获取字符串值索引 6 至索引 10 上的内容
  5. "world"
  6.  
  7. redis> GETRANGE message 3 7 -- 获取字符串值的中间部分
  8. "lo wo"
  9.  
  10. redis> GETRANGE message -11 -7 -- 使用负数索引获取指定内容
  11. "hello"

图 2-6 展示了上面的这四个命令是如何根据索引去获取值的内容的。


图 2-6 GETRANGE 命令执行示例_images/IMAGE_GETRANGE_1.png_images/IMAGE_GETRANGE_2.png_images/IMAGE_GETRANGE_3.png_images/IMAGE_GETRANGE_4.png


其他信息

属性
复杂度O(N),其中 N 为被返回内容的长度。
版本要求GETRANGE 命令从 Redis 2.4.0 开始可用。