2 <!DOCTYPE HTML PUBLIC 
"-//W3C//DTD HTML 4.01//EN"> 
   5         <link type=
"text/css" rel=
"stylesheet" href=
"style.css" /> 
  12             <img style=
"border:none" alt=
"Redis Documentation" src=
"redis.png"> 
  16             <div id=
"pagecontent"> 
  18 <!-- This is a (PRE) block.  Make sure it's left aligned or your toc title will be off. --> 
  19 <b>SubstrCommand: Contents
</b><br>  <a href=
"#SUBSTR _key_ _start_ _end_">SUBSTR _key_ _start_ _end_
</a><br>  <a href=
"#GETRANGE _key_ _start_ _end_">GETRANGE _key_ _start_ _end_
</a><br>    <a href=
"#Return value">Return value
</a><br>    <a href=
"#Examples">Examples
</a> 
  22                 <h1 class=
"wikiname">SubstrCommand
</h1> 
  29                     #sidebar 
<a href=
"StringCommandsSidebar.html">StringCommandsSidebar
</a><h1><a name=
"SUBSTR _key_ _start_ _end_">SUBSTR _key_ _start_ _end_
</a></h1> 
  30 <h1><a name=
"GETRANGE _key_ _start_ _end_">GETRANGE _key_ _start_ _end_
</a></h1> 
  31 <i>Time complexity: O(start+n) (with start being the start index and n the total length of the requested range). Note that the lookup part of this command is O(
1) so for small strings this is actually an O(
1) command.
</i><b>Warning:
</b> this command was renamed into GETRANGE. SUBSTR will be taken as an alias until the next major release of Redis.
<br/><br/><blockquote>Return a subset of the string from offset 
<i>start
</i> to offset 
<i>end
</i>(both offsets are inclusive).Negative offsets can be used in order to provide an offset starting fromthe end of the string. So -
1 means the last char, -
2 the penultimate andso forth.
</blockquote> 
  32 <blockquote>The function handles out of range requests without raising an error, butjust limiting the resulting range to the actual length of the string.
</blockquote> 
  33 <h2><a name=
"Return value">Return value
</a></h2><a href=
"ReplyTypes.html">Bulk reply
</a><h2><a name=
"Examples">Examples
</a></h2><pre class=
"codeblock python" name=
"code"> 
  34 redis
> set s 
"This is a string
" 
  36 redis
> substr s 
0 3 
  38 redis
> substr s -
3 -
1 
  40 redis
> substr s 
0 -
1 
  41 "This is a string
" 
  42 redis
> substr s 
9 100000