前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【C++】STL 容器 - string 字符串操作 ⑦ ( 字符串区间删除 - erase 函数 | 字符串插入 - insert 函数 | 字符串截取子串 - substr 函数 )

【C++】STL 容器 - string 字符串操作 ⑦ ( 字符串区间删除 - erase 函数 | 字符串插入 - insert 函数 | 字符串截取子串 - substr 函数 )

作者头像
韩曙亮
发布于 2023-12-18 04:53:46
发布于 2023-12-18 04:53:46
3.5K00
代码可运行
举报
运行总次数:0
代码可运行
文章目录

  • 一、string 字符串区间删除 - erase 函数
    • 1、string 类 erase 函数原型说明
    • 2、代码示例 - erase 函数
  • 二、string 字符串插入 - insert 函数
    • 1、string 类 insert 函数原型说明
    • 2、代码示例 - insert 函数
  • 三、string 字符串截取子串 - substr 函数
    • 1、string 类 substr 函数原型说明
    • 2、代码示例 - substr 函数

一、string 字符串区间删除 - erase 函数


1、string 类 erase 函数原型说明

string 类 erase 函数原型 : 该函数 是 string 类的成员函数 , 其作用是 从位置 pos 开始 , 删除长度为 n 的子字符串 , 如果 n 的值超过了字符串的长度 , 那么整个字符串都会被删除 ;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
string& erase(int pos=0, int n=npos);
  • 参数说明 :
    • pos : 要删除的 子字符串 的 起始位置 , 位置从 0 开始计数 ;
    • n : 要删除的子字符串的长度 , 默认值为 npos , 表示删除从 pos 位置到字符串末尾的所有字符 ;
  • 返回值说明 : 该函数 返回一个 指向修改后的字符串 的引用 ;

2、代码示例 - erase 函数

代码示例 :

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include "iostream"
using namespace std;
#include "string"

int main() {

	string s1 = "Tom And Jerry";

	// 删除 0 索引开始的 2 个字符
	string s2 = s1.erase(0, 2);

	// 打印 s1 和 s2 值
	cout << "s1 = " << s1 << endl;
	cout << "s2 = " << s2 << endl;


	// 控制台暂停 , 按任意键继续向后执行
	system("pause");

	return 0;
};

执行结果 :

s1 = m And Jerry s2 = m And Jerry 请按任意键继续. . .

二、string 字符串插入 - insert 函数


1、string 类 insert 函数原型说明

string 类 insert 函数 插入 字符串 函数原型 : 该函数作用是 在字符串的指定位置 pos 插入另一个字符串 s , 字符串类型可以是 char* 类型 , 也可以是 string 类型 ; 插入后 , 原字符串中位于 pos 位置及其之后的字符会向后移动 , 为新插入的字符串腾出空间 ;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
string &insert(int pos, const char *s);
string &insert(int pos, const string &s);
  • 参数说明:
    • pos : 插入位置的索引 , 位置从 0 开始计数 , 表示字符串中的第一个字符 ;
    • s : 要插入的字符串 , string& 类型 或 char* 类型 ;
  • 返回值说明 : 返回一个指向修改后的字符串的引用 , 可以进行链式调用 ;

string 类 insert 函数 插入 若干 字符 函数原型 : 该 函数作用是 在字符串的指定位置 pos 插入 n 个字符 c ; 插入后 , 原字符串中位于 pos 位置及其之后的字符会向后移动 , 为新插入的字符腾出空间 ;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
string &insert(int pos, int n, char c);
  • 参数说明 :
    • pos : 插入位置的索引 , 位置从 0 开始计数 ;
    • n : 要插入的字符数量 ;
    • c : 要插入的字符 ;
  • 返回值说明 : 返回一个指向修改后的字符串的引用 ;

2、代码示例 - insert 函数

代码示例 :

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include "iostream"
using namespace std;
#include "string"

int main() {

	string s1 = "Tom And Jerry";

	// 在 0 索引位置 , 插入字符串
	string s2 = s1.insert(0, "Hello ");

	// 打印 s1 和 s2 值
	cout << "s1 = " << s1 << endl;
	cout << "s2 = " << s2 << endl;


	// 控制台暂停 , 按任意键继续向后执行
	system("pause");

	return 0;
};

执行结果 :

s1 = Hello Tom And Jerry s2 = Hello Tom And Jerry 请按任意键继续. . .

三、string 字符串截取子串 - substr 函数


1、string 类 substr 函数原型说明

string 类 substr 函数原型 : 该函数 会截取字符串的一部分 , 并返回一个新的字符串 ; 截取的起始位置是 pos , 截取的字符数量是 n ; 如果 n 的值超过了字符串的长度 ; 那么整个字符串都会被截取 ;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
string substr(int pos = 0, int n = npos) const;
  • 参数说明 :
    • pos : 要截取的起始位置 ; 位置从 0 开始计数 , 表示字符串中的第一个字符 ;
    • n : 要截取的字符数量 ; 默认值为 npos , 表示截取从 pos 位置到字符串末尾的所有字符 ;
  • 返回值说明 : 该函数 返回一个 新的字符串 , 包含从 pos 位置开始的 n 个字符 ;

2、代码示例 - substr 函数

代码示例 :

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include "iostream"
using namespace std;
#include "string"

int main() {

	string s1 = "Tom And Jerry";

	// 截取 0 索引位置开始的 3 个字符
	string s2 = s1.substr(0, 3);

	// 打印 s1 和 s2 值
	cout << "s1 = " << s1 << endl;
	cout << "s2 = " << s2 << endl;


	// 控制台暂停 , 按任意键继续向后执行
	system("pause");

	return 0;
};

执行结果 :

s1 = Tom And Jerry s2 = Tom 请按任意键继续. . .

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-12-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、string 字符串区间删除 - erase 函数
    • 1、string 类 erase 函数原型说明
    • 2、代码示例 - erase 函数
  • 二、string 字符串插入 - insert 函数
    • 1、string 类 insert 函数原型说明
    • 2、代码示例 - insert 函数
  • 三、string 字符串截取子串 - substr 函数
    • 1、string 类 substr 函数原型说明
    • 2、代码示例 - substr 函数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档