原文链接:http://doc.redisfans.com/string/index.html

append key value
  将指定的值追加到key末尾,若key不存在,则创建并赋值,返回追加后的字符串长度;例:append foo bar。

bitcount key
  获取给定字符串中,被设置为1的比特位的数量;例:bitcount foo。

bitop operation destkey key [key.....]
  对一个或多个保存二进制位的字符串进行位操作,并将结果保存到deskey上:

  • bitop and destkey key [key ...] ,对一个或多个key求逻辑并,并将结果保存到destkey,例:bitop and foo foo1 foo2。
  • bitop or destkey key [key ...] ,对一个或多个key求逻辑或,并将结果保存到destkey,例:bitop or foo foo1 foo2 。
  • bitop xor destkey key [key ...] ,对一个或多个key求逻辑异或,并将结果保存到destkey,例:bitop oxr foo foo1 foo2。
  • bitop not destkey key ,对给定key求逻辑非,并将结果保存到destkey例:bitop not foo foo1。

decr key
  将key中存储的值减1,返回执行decr命令后key的值,若key不存在则会创建并将key的值初始化为0后再进行操作,若key存在但值不能转化为数字时,会返回错误;例:decr foo。

decrby key decrement
  将key中存储的值减decrement,返回执行decrby后key的值,若key不存在则会创建并将key的值初始化为0后再进行操作,若key存在但值不能转化为数字时,会返回错误;例:decrby foo 5。

get key
  返回key的值,若key不存在则返回nil,若key存储的值不是字符串则返回错误;例:get foo。

getbit key offset
  对key所存储的字符串,获取指定偏移量上的位,当offset比字符串大或者key不存在时返回0;例:getbit foo 5。

getrange key start end
  获取字符串的子串,截取范围由start和end决定(负数表示从后截取,如:-1表示最后一个字符,-2表示倒数第二个),当key不存在时,返回空;例:foo的值为“what are you want to do”获取getrange foo 0 5,本例返回“what a”。

getset key value
  将key设置为指定的value并返回旧的值,当key不存在时设置值并返回nil,当key存在但不为字符串时不能设置并返回error;例:getset foo 2。

incr key
  将key中存储的值加1,返回执行incr命令后key的值,若key不存在则会创建并将key的值初始化为0后再进行操作,若key存在但值不能转化为数字时,会返回错误;例:incr foo。

incrby key decrement
  将key中存储的值加increment,返回执行incrby后key的值,若key不存在则会创建并将key的值初始化为0后再进行操作,若key存在但值不能转化为数字时,会返回错误;例:incrby foo 5。

incrbyfloat key increment
  将key中存储的值加increment,返回执行incrby后key的值,若key不存在则会创建并将key的值初始化为0后再进行操作,若key存在但值不能转化为数字时,会返回错误;不同于incrby的是incrby只能添加整形,而incrbyfloat可以操作浮点型,当然你或许会问为啥没decrbyfloat,我试了下,这个真没有,不过可以使用负数达到一样的效果嘛;例:incrbyfloat foo 0.1,但是本人在试用时返回的结果是0.0999999999,这个不清楚是不是存储精度的问题,建议慎用。

mget key [key...]
  依次返回一个或多个key的值,若key不存在返回nil,若key存在但不是字符串返回nil;例:mget foo1 foo2 foo3。

mset key value [key value...]
  为一组或多组key设置值,该操作为原子操作,要么一组都设置成功,要么一组都设置失败;例:mset foo_1 val_1 foo_2 val_2。

msetnx key value [key value...]
  为一组或多组key设置值,该操作为原子操作,要么一组都设置成功,要么一组都设置失败,与mset不同的是msetnx中的key必须是不存在的,若有一个已存在则会整体失败;例:mset foo_1 val_1 foo_2 val_2。

setex key seconds value
  设置带生存时间的key的值,以秒为单位;例:setex foo 10 hi。

psetex key milliseconds value
  和setex类似,也是设置带生存时间的key的值,但是是以毫秒为单位;例:psetex foo 10000 hi。

set key value [ex seconds] [px milliseconds] [nx|xx]
  为key设置值,ex和px均为设置过期时间只不过单位不同,nx表示只有key不存在时才进行操作,xx表示只有key存在时才进行操作。

setnx key value
  为key设置值,若key已存在则不进行任何操作;例:setnx foo 1。

setbit key offset value
  对key所储存的字符串值,设置或清除指定偏移量上的位(bit)。当 key 不存在时,自动生成一个新的字符串值。字符串会进行伸展(grown)以确保它可以将 value 保存在指定的偏移量上。当字符串值进行伸展时,空白位置以 0 填充;例:setbit foo 2 1。

setrange key offset value
  从偏移量offset开始重写字符串,当offset超出原字符串长度时,空白以“\x00”零字节补充;例:setrange foo 5 test。

strlen key
  返回key所存储的字符串的长度,当key不存在时返回0,当key存在但不是字符串时返回错误;例:strlen foo。

Redis学习笔记(四) 基本命令:String操作的更多相关文章

  1. StackExchange.Redis学习笔记(四) 事务控制和Batch批量操作

    Redis事物 Redis命令实现事务 Redis的事物包含在multi和exec(执行)或者discard(回滚)命令中 和sql事务不同的是,Redis调用Exec只是将所有的命令变成一个单元一起 ...

  2. Redis学习笔记四:独立功能之发布与订阅

    客户端可以通过执行 subscribe 命令订阅一个或多个频道,每当有其他客户端向被订阅的频道发送消息时,频道所有的订阅者都会收到这条消息. 客户端还可以通过执行 psubscribe 命令订阅一个或 ...

  3. Redis 学习笔记四 Mysql 与Redis的同步实践

    一.测试环境在Ubuntu kylin 14.04 64bit 已经安装Mysql.Redis.php.lib_mysqludf_json.so.Gearman. 点击这里查看测试数据库及表参考 本文 ...

  4. Redis学习笔记(二)Redis支持的5种数据类型的总结之String和Hash

    引言 在Redis学习笔记(一)中我们已经会安装并且简单使用Redis了,接下来我们一起来学习下Redis支持的5大数据类型. 简介 Redis是REmote DIctionary Server(远程 ...

  5. openresty 学习笔记四:连接mysql和进行相关操作

    openresty 学习笔记四:连接mysql和进行相关操作 毕竟redis是作为缓存,供程序的快速读写,虽然reidis也可以做持久化保存,但还是需要一个做数据存储的数据库.比如首次查询数据在red ...

  6. python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

    python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...

  7. Redis学习笔记(二) Redis 数据类型

    Redis 支持五种数据类型:string(字符串).list(列表).hash(哈希).set(集合)和 zset(有序集合),接下来我们讲解分别讲解一下这五种类型的的使用. String(字符串) ...

  8. Redis学习笔记4-Redis配置详解

    在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server   xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...

  9. Redis学习笔记7--Redis管道(pipeline)

    redis是一个cs模式的tcp server,使用和http类似的请求响应协议.一个client可以通过一个socket连接发起多个请求命令.每个请求命令发出后client通常会阻塞并等待redis ...

  10. Redis学习笔记(1)——Redis简介

    一.Redis是什么? Remote Dictionary Server(Redis) 是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value ...

随机推荐

  1. EditPlus修改主题方法

    在“EditPlus.exe”或"EditPlus64.exe"所在的目录下找到"editplus_u.ini"文件(如果不存在就新建一个),修改这个文件即可更 ...

  2. 用LyX写中文幻灯片

    虽然在虚拟机装了texlive以备使用,但是在不动CTeX的情况下,是否能使用LyX写中文幻灯片呢.网上只是寥寥几篇大神们在Linux用LyX的博文. 最近把论文交完写幻灯片,于是也把这个想法尝试了一 ...

  3. 获取listview的高度代码

    public int getTotalHeightofListView(ListView listView) { ListAdapter mAdapter = (ListAdapter) listVi ...

  4. Walking on the path of Redis --- Introduction and Installation

    废话开篇 以前从来没听说过有Redis这么个玩意,无意间看到一位仁兄的博客,才对其有所了解,所以决定对其深入了解下.有不对的地方还请各位指正. Redis介绍 下面是官方的介绍,不喜欢english的 ...

  5. Vs2010无法打开文件“Kernel32.lib”、无法打开“libcpmt.lib”"msvcprt.lib"

    1.对于无法打开"Kernel"问题,即使复制lib文件到目录,仍然会出现最后的错误; 原因:WindowsSdk 安装失败! 方法:重装 microsoft SDK6.0 ,再在 ...

  6. Programming Recipes

    Recipes是从一本书上看来的,即有诀窍又有食谱的意思.这里想记一些工作中遇到的问题和解决方法,说决窍有点过了,说食谱照单做又不足,所以Recipe这个词两个意思都有混合起来正合适. 1.Windo ...

  7. git基础讲解

    idea :https://blog.csdn.net/autfish/article/details/52513465 eclipse:https://blog.csdn.net/yang57266 ...

  8. PHP 时间处理

    1:获取当前日期格式时间 date("Y-m-d H:i:s");    2:转化为时间戳 strtotime( date("Y-m-d") ) 3:转化为日期 ...

  9. 远程连接windows出现身份验证错误,提示"由于CredSSP加密Oracle修正"解决方案

    本机操作系统(OS版本:10.0.17134) 远程计算机操作系统(OS版本:6.3.9600) 远程连接的时候报错“出现身份验证错误,要求的函数不受支持.远程计算机:xxx 这可能是由于CredSS ...

  10. 【disconf】环境搭建【linux】

     1.搭建disconf需要安装的配置. 安装Linux:CentOS7     安装Zookeeper:zookeeper-3.4.6     安装Redis:redis-3.0.0     安装N ...