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