1. 如何在ubuntu18.04上安装和保护redis
  2. 如何连接到Redis数据库
  3. 如何管理Redis数据库和Keys
  4. 如何在Redis中管理副本和客户端
  5. 如何在Redis中管理字符串
  6. 如何在Redis中管理list
  7. 如何在Redis中管理Hashes
  8. 如何在Redis中管理Sets
  9. 如何在Redis中管理Sorted Sets
  10. 如何在Redis中运行事务
  11. 如何使Redis中的Key失效
  12. 如何解决Redis中的问题
  13. 如何从命令行更改Redis的配置
  14. Redis数据类型简介

介绍

Redis是一个开源的内存中键值数据存储。在Redis中,字符串是您可以创建和管理的最基本的值类型。本教程概述了如何创建和检索字符串以及如何操作字符串键所保存的值。

如何使用本指南

本指南以备有完整示例的备忘单形式编写。我们鼓励您跳至与您要完成的任务相关的任何部分。

本指南中显示的命令已在运行Redis版本4.0.9的Ubuntu 18.04服务器上进行了测试。要设置类似的环境,您可以按照我们的指南如何在Ubuntu 18.04上安装和保护Redis的步骤1进行操作。我们将通过使用Redis命令行界面运行它们来演示这些命令的行为。请注意,如果您使用其他Redis界面(例如Redli),则某些命令的确切输出可能会有所不同。 redis-cli

另外,您可以提供一个托管的Redis数据库实例来测试这些命令,但是请注意,根据数据库提供者所允许的控制级别,本指南中的某些命令可能无法按所述方式工作。要配置DigitalOcean托管数据库,请遵循我们的托管数据库产品文档。然后,您必须 安装Redli 或 设置TLS隧道才能通过TLS连接到托管数据库。

创建和管理字符串

包含字符串的键只能包含一个值。您不能在一个键中存储多个字符串。但是,Redis中的字符串是二进制安全的,这意味着Redis字符串可以保存任何类型的数据,从字母数字字符到JPEG图像。唯一的限制是字符串的长度必须小于或等于512 MB。

要创建一个字符串,请使用set命令。例如,以下set命令创建一个名为key的键key_Welcome1,该键包含字符串"Howdy":

set key_Welcome1 "Howdy"

OK

要在一个命令中设置多个字符串,请使用mset:

mset key_Welcome2 "there" key_Welcome3 "partners,"

您还可以使用以下append命令创建字符串:

append key_Welcome4 "welcome to Texas"

如果成功创建了字符串,append将输出一个整数,该整数等于该字符串包含的字符数:

16

注意,append也可以用来更改字符串的内容。有关详细信息,请参见有关处理字符串的部分。

检索字符串

要检索字符串,请使用以下get命令:

get key_Welcome1

Howdy

要使用一个命令检索多个字符串,请使用mget:

mget key_Welcome1 key_Welcome2 key_Welcome3 key_Welcome4

1) "Howdy"
2) "there"
3) "partners,"
4) "welcome to Texas"

对于传递给mget它的每个键都不包含字符串值或根本不存在,该命令将返回nil。

操作字符串(Manipulating Strings)

如果字符串由整数组成,则可以运行incr命令将其增加一:

set key_1 3
incr key_1 4

同样,您可以使用以下incrby命令将数字字符串的值增加特定的增量:

incrby key_1 16

20

该decr和decrby命令的工作方式相同,但他们减少存储在数字字符串的整数:

decr key_1

19

decrby key_1 16

3

如果字母字符串已经存在,append则将值附加到现有值的末尾,并返回字符串的新长度。为了说明这一点,以下命令将附加", y'all"到key所保存的字符串上key_Welcome4,因此现在该字符串将显示为"welcome to Texas, y'all":

append key_Welcome4 ", y'all"

15

您也可以将整数附加到包含数字值的字符串中。以下示例附加45到3,其中包含整数key_1,因此它将保持345。在这种情况下,append还将返回字符串的新长度,而不是其新值:

append key_1 45

3

由于此键仍仅保留数字值,因此可以对其执行incr和decr操作。您也可以在整数字符串后附加字母字符,但是如果这样做,则在字符串上运行incr和运行decr将产生错误,因为字符串值不再是整数。

结论

本指南详细介绍了许多用于在Redis中创建和管理字符串的命令。如果您想在本指南中概述其他相关的命令,参数或过程,请在下面的评论中提出疑问或提出建议。

有关Redis命令的更多信息,请参阅关于如何管理Redis数据库的系列教程。
作者:分布式编程
出处:https://zthinker.com/
如果你喜欢本文,请长按二维码,关注 分布式编程
.

(Redis基础教程之五)如何在Redis中操作字符串的更多相关文章

  1. (Redis基础教程之六)如何使用Redis中的List

    如何在ubuntu18.04上安装和保护redis 如何连接到Redis数据库 如何管理Redis数据库和Keys 如何在Redis中管理副本和客户端 如何在Redis中管理字符串 如何在Redis中 ...

  2. Redis入门教程(三)— Java中操作Redis

    在Redis的官网上,我们可以看到Redis的Java客户端众多 其中,Jedis是Redis官方推荐,也是使用用户最多的Java客户端. 开始前的准备 使用jedis使用到的jedis-2.1.0. ...

  3. mongodb,Mysql,redis基础教程

    数据库基础 1:mongodb基础教程 1:pymongo基础教程  2:Mysql基础教程 3:redis基础教程

  4. 如何在 JavaScript 中检查字符串是否包含子字符串?

    如何在 JavaScript 中检查字符串是否包含子字符串? // var test4 = _.includes(string, substring); 该方法需要此文件 <script src ...

  5. java 中操作字符串都有哪些类?(未完成)它们之间有什么区别?(未完成)

    java 中操作字符串都有哪些类?(未完成)它们之间有什么区别?(未完成)

  6. NewLife.Redis基础教程

    X组件缓存架构以ICache接口为核心,包括MemoryCache.Redis和DbCache实现,支持FX和netstandard2.0!后续例程与使用说明均以Redis为例,各缓存实现类似. Re ...

  7. Redis基础教程

    说明:本文中涉及的代码是c#所写,连接redis的第三方驱动为ServiceStack.Redis.连接redis的客户端软件为redis-desktop-manager. 一.Redis是什么 Re ...

  8. Redis入门教程:特性及数据类型的操作

    虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍.是一个很不错的Redis入门 ...

  9. Spring Boot 2.x基础教程:找回启动日志中的请求路径列表

    如果您看过之前的Spring Boot 1.x教程,或者自己原本就对Spring Boot有一些经验,或者对Spring MVC很熟悉.那么对于Spring构建的Web应用在启动的时候,都会输出当前应 ...

  10. (Python基础教程之十三)Python中使用httplib2 – HTTP GET和POST示例

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

随机推荐

  1. pyinstaller 打包 win32ctypes.pywin32.pywintypes.error: (225, '', '无法成功完成操作,因为文件包含病毒或潜在的垃圾软件。')

    背景: 使用python 写了一个程序,使用pyinstaller打包, 不使用-w --noconsole的命令打包隐藏命令行窗口时,是正常的, 但是使用-w或者--noconsole就会报错win ...

  2. Kali初次使用,如何获得root权限?【转】

    最新的kali 系统,安装的时候会创建一个新用户,不是root的,然后安装软件的时候会要求root权限,要启用root账号可以按下面这个写的 方法1已经确认可以.方法2没尝试,自己试试吧. 1.确定用 ...

  3. node: /lib64/libm.so.6: version `GLIBC_2.27‘ not found问题解决方案

    场景 centos7服务器使用nvm安装的node之后,只要使用npm或者node,均会出现以下问题. npm -v node: /lib64/libm.so.6: version `GLIBC_2. ...

  4. C++ STL queue容器——队列

    queue容器 基本概念 queue是一种**先进先出的数据结构,它有两个出口,queue容器允许从一端新增元素,从另一端移除元素. queue容器没有迭代器,所有元素进出都必须符合"先进先 ...

  5. [29] CSP模拟2

    A.不相邻集合 考虑值域上连续的段,可以发现连续的长度为 \(x\) 的段的贡献必定为 \(\lceil{\frac{x}{2}}\rceil\) 考虑并查集维护值域连续的段的大小,每次询问求出全部连 ...

  6. Spirng Aop 实现自定义注解及实现

    需求:日志记录 需要记录当前用户访问的每个接口对应的前端页面功能信息 声明一个注解 @Documented @Retention(RetentionPolicy.RUNTIME) @Target({E ...

  7. 【赵渝强老师】什么是Oracle的数据字典?

    数据字典是oracle存放有关数据库信息的地方,几乎所有的系统信息和对象信息都可在数据字典中进行查询.数据字典是oracle数据库系统的信息核心,它是一组提供有关数据库信息的表和视图的集合,这些表和视 ...

  8. Android Perfetto 系列 2:Perfetto Trace 抓取

    使用 Perfetto 分析问题跟使用 Systrace 分析问题的步骤是一样的: 首先你需要抓取 Perfetto 文件 在ui.perfetto.dev 中打开 Trace 文件进行分析或者使用命 ...

  9. Makefile优化编译速度

    并行编译:使用 make -j 命令来进行并行编译,可以加快编译速度.-j 后面可以跟一个数字,表示并行编译的线程数. 懒惰计算:使用 .PHONY 规则来避免无谓的重新编译.该规则告诉 make,这 ...

  10. 墨天轮访谈 | 腾讯张铭:带你揭秘王者荣耀背后的游戏数据库 TcaplusDB

    分享嘉宾:张铭 腾讯数据库专家工程师,TcaplusDB产品负责人 整理:墨天轮社区 导读 大家好,我是腾讯TcaplusDB的产品负责人张铭,TcaplusDB是专为游戏设计的分布式 NoSQL 数 ...