原文链接: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. (转)基于MVC4+EasyUI的Web开发框架经验总结(5)--使用HTML编辑控件CKEditor和CKFinder

    http://www.cnblogs.com/wuhuacong/p/3780356.html Web开发上有很多HTML的编辑控件,如CKEditor.kindeditor等等,很多都做的很好,本文 ...

  2. Apex语言(二)变量与常量

    1.变量 凡是交给计算运算(处理)的数据就是变量,用来保存参加运算的数据和计算结果. 变量由变量名来标识. 变量名由字母数字和下划线组成,不能以数字开头. [正确]number,number1,num ...

  3. day27-2 pandas模块

    目录 pandas Series(了解) DataFrame 内置方法 处理缺失值 合并数据 取值 把表格传入excel文件中 把表格从excel中取出来 高级(了解) pandas 处理表格等文件/ ...

  4. 基于Vue的事件响应式进度条组件

    写在前面 找了很多Vue 进度条组件!,都不包含拖拽和点击事件,input range倒是原生包含input和change事件,但是直接基于input range做进度条的话,样式部分需要做大量调整和 ...

  5. phthon中的open函数模式

    原文地址:http://www.runoob.com/python/python-func-open.html r 以只读方式打开文件.文件的指针将会放在文件的开头.这是默认模式. rb 以二进制格式 ...

  6. Dubbo&Zookeeper运行原理

    Dubbo是一个分布式服务框架,Dubbo的架构如图所示: 节点角色说明: Provider: 暴露服务的服务提供方. Consumer: 调用远程服务的服务消费方. Registry: 服务注册与发 ...

  7. RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第二篇【原理】

    http://blog.csdn.net/deadgrape/article/details/50574459 接着上一篇,我们开始聊聊APPIUM的框架和运行模式.废话不多说直接上图. 1.首先自动 ...

  8. 计算机网络系统--TCP/IP OSI模型

  9. 交叉编译faac共享库

    作者:咕唧咕唧liukun321 来自:http://blog.csdn.net/liukun321 Advanced Audio Coding.一种专为声音数据设计的文件压缩格式,与Mp3不同,它採 ...

  10. 数据可视化利器pyechart和matplotlib比较

    python中用作数据可视化的工具有多种,其中matplotlib最为基础.故在工具选择上,图形美观之外,操作方便即上乘. 本文着重说明常见图表用基础版matplotlib和改良版pyecharts作 ...