详解C++字符串常用操作函数(查找、插入、截取、删除等)

C++字符串是编程中常用的数据类型之一,字符串常用的操作函数有很多,本文一一介绍并附带示例,内容包括字符串的查找、插入、截取、删除等操作:

1. 查找

字符串查找操作有几个函数可以使用:find()rfind()find_first_of()find_last_of()find_first_not_of()find_last_not_of()。主要区别是查找的方向、开始查找的位置和查找的规则。

1.1 find

find(const string& str, size_t pos = 0) const,该函数用于查找字符串中与指定参数的所有字符序列相匹配的第一个位置。如果未找到,则返回-1。

示例:

string s = "hello world";
int index = s.find("world"); // 返回6

1.2 rfind

rfind(const string& str, size_t pos = npos) const,该函数用于查找从指定位置开始往前的所有字符序列与指定字符串相匹配的最后一个位置。如果未找到,则返回-1。

示例:

string s = "hello, world, world";
int index = s.rfind("world"); // 返回15

2. 插入

C++字符串插入操作有两个函数可以使用:insert()replace()

2.1 insert

insert(size_t pos, const string& str),该函数用于在指定位置之前插入一个字符串。如果pos的值超过了字符串的长度,则在字符串末尾插入。

示例:

string s = "hello";
s.insert(5, " world"); // s变为"hello world"

2.2 replace

replace(size_t pos, size_t len, const string& str),该函数用于从指定位置开始替换指定长度的子串。

示例:

string s = "hello, world";
s.replace(7, 5, "Justin"); // s变为"hello, Justin"

3. 截取

C++字符串截取操作有两个函数可以使用:substr()erase()

3.1 substr

substr(size_t pos = 0, size_t len = npos) const,该函数用于从指定位置开始截取指定长度的子串。如果pos的值超过了字符串的长度,则返回空字符串。

示例:

string s = "hello, world";
string sub = s.substr(7, 6); // sub变为"world"

3.2 erase

erase(size_t pos = 0, size_t len = npos),该函数用于删除指定位置和长度的子串。

示例:

string s = "hello, world";
s.erase(7, 5); // s变为"hello, "

4. 删除

C++字符串删除操作只有一个函数可以使用:erase(),操作同上。

示例:

string s = "hello, world";
s.erase(7, 6); // s变为"hello,"

以上就是C++字符串常用操作函数的介绍,希望能够对大家有所帮助。

阅读剩余 52%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解C++字符串常用操作函数(查找、插入、截取、删除等) - Python技术站

(0)
上一篇 2023年6月20日
下一篇 2023年6月20日

相关文章

  • mysql数据库存储过程异常处理

    MySQL数据库存储过程异常处理 MySQL存储过程是一种用户定义的可重用的代码块,可以完成一些特定的操作。在存储过程中,处理异常也是非常重要的一部分。处理异常可以保证程序的稳定性,避免系统崩溃等情况的发生。 在MySQL数据库中,使用 DECLARE 语句声明异常变量,使用 SIGNAL 语句来抛出异常。 异常处理流程 MySQL数据库存储过程中的异常处理…

    其他 2023年3月29日
    00
  • 深入了解PHP类Class的概念

    理解PHP类的概念是学习面向对象编程的重要基础。在本文中,我们将深入了解PHP类的概念,包括定义类、类的属性和方法、访问控制、继承和多态等内容。 定义类 类可以看作是一种数据类型,可以用class关键字来定义类。以下是定义一个简单的类的示例: class Person { // 类的属性 public $name; public $age; // 类的方法 …

    other 2023年6月27日
    00
  • SQLServer2008提示评估期已过解决方案

    SQL Server 2008提示评估期已过解决方案 问题描述 在使用 SQL Server 2008 进行开发或管理数据库时,可能会发现在 SQL Server Management Studio 或其他管理工具的界面上经常会收到弹窗提示 “评估期已过” 的信息,该信息可能会干扰工作的进行,因此需要解决。 解决方案 1. 更新许可证密钥 如果您的 SQL …

    other 2023年6月27日
    00
  • linux和windows查看当前运行的python进程及gpu、cpu

    当我们在使用Python编写程序时,有时需要查看当前运行的Python进程以及GPU和CPU的使用情况。在Linux和Windows中,可以使用命令行工具来实现这一目的。以下是两种示例方法: 1. 在Linux中查看Python进程和GPU/CPU使用情况 查看Python进程 可以使用ps命令来查看当前运行的Python进程。以下是示例命令: ps -ef…

    other 2023年5月8日
    00
  • ListView下拉列表控件使用方法详解

    ListView下拉列表控件使用方法详解 简介 ListView是一种常用的下拉列表控件,可以实现列表数据的显示与选择。本篇文章将详细介绍ListView的使用方法。 实现方式 ListView通常可以通过以下两种方式实现: 通过代码手动创建 通过XML布局文件创建 通过代码手动创建 下面是一个通过代码手动创建ListView的示例: ListView li…

    other 2023年6月26日
    00
  • Python 启动时选择32位 或64位版的操作

    Python 启动时选择32位或64位版的操作攻略 在启动 Python 时选择使用 32 位或 64 位版本,可以根据操作系统和 Python 安装的版本进行设置。下面是详细的攻略: 步骤 1:确定操作系统和 Python 版本 首先,确定你的操作系统和已安装的 Python 版本。这将决定你可以选择的位数选项。 对于 Windows 操作系统,可以通过以…

    other 2023年7月28日
    00
  • Mysql创建json字段索引的两种方式

    下面是关于MySQL创建JSON字段索引的两种方式的攻略。 方式一:使用虚拟列 准备工作 在 MySQL 5.7.8 版本及以后,支持通过自定义虚拟列的方式对表中的 JSON 字段进行索引。因此,在开始之前需要确保你的 MySQL 版本不低于 5.7.8。 操作步骤 接下来,我们假设有一个名为 users 的表,其中有一个 JSON 字段 info,现在我们…

    other 2023年6月25日
    00
  • java的四种引用——强弱软虚

    Java的四种引用——强弱软虚 Java中的内存管理是一个关键问题,为了更好地利用内存资源,Java引入了垃圾回收机制,但是垃圾回收并不意味着内存就完全不需要管理了。Java中有四种引用类型,分别是强引用,弱引用,软引用和虚引用,这四种引用类型分别有不同的使用场景和生命周期,是Java内存管理的重要组成部分。 强引用 强引用是Java中默认的引用类型,如果存…

    其他 2023年3月28日
    00
合作推广
合作推广
分享本页
返回顶部