VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 8416|回复: 89
打印 上一主题 下一主题

《实用C++》第52课 C++中的字符串类stirng②

  [复制链接]
51_avatar_middle
最佳答案
9 
跳转到指定楼层
1#
online_admins 发表于 2018-6-29 01:12:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1、string字符串的求子串操作:
string substr(int pos = 0, int n = npos) const;    //返回 pos 开始的 n个字符组成的字符串
string str = "abcdefg";
string sub = str.substr(2, 2);
cout << sub << endl;

2、string字符串类的查找操作:
int find(char c, int pos = 0) const;    //从pos开始查找字符c在当前字符串的位置
int find(const char *s, int pos = 0) const;    //从pos开始查找字符串s在当前串中的位置
int find(const char *s, int pos, int n) const;    //从pos开始查找字符串s中前n个字符在当前串中的位置
int find(const string &s, int pos = 0) const;    //从pos开始查找字符串s在当前串中的位置
//查找成功时返回所在位置,是个 >=0 的数,失败返回 string::npos 的值。npos 的值默认就是  -1

此外,string字符串类还提供了反向查找的函数  rfind,大家可以课后来尝试下,使用方法跟 find 几乎一致。
备注:相关代码演示详见视频教程!

3、string字符串类的替换操作:
string &replace(int p0, int n0, const char *s);    //删除从p0开始的n0个字符,然后在p0处插入串s
string &replace(int p0, int n0, const char *s, int n);    //删除p0开始的n0个字符,然后在p0处插入字符串s的前n个字符
string &replace(int p0, int n0, const string &s);    //删除从p0开始的n0个字符,然后在p0处插入串s
string &replace(int p0, int n0, const string &s, int pos, int n);    //删除p0开始的n0个字符,然后在p0处插入串s中从pos开始的n个字符
string &replace(int p0, int n0, int n, char c);    //删除p0开始的n0个字符,然后在p0处插入n个字符c
string &replace(iterator first0, iterator last0, const char *s);    //把 [first0,last0)之间的部分替换为字符串s
string &replace(iterator first0, iterator last0, const char *s, int n);    //把 [first0,last0)之间的部分替换为s的前n个字符
string &replace(iterator first0, iterator last0, const string &s);    //把 [first0,last0)之间的部分替换为串s
string &replace(iterator first0, iterator last0, int n, char c);    //把 [first0,last0)之间的部分替换为n个字符c
string &replace(iterator first0, iterator last0, const_iterator first, const_iterator last);    //把 [first0,last0)之间的部分替换成 [first,last)之间的字符串
备注:相关代码演示详见视频教程!

4、string字符串类的插入操作:
string &insert(int p0, const char *s);
string &insert(int p0, const char *s, int n);
string &insert(int p0, const string &s);
string &insert(int p0, const string &s, int pos, int n);
//前4个函数在p0位置插入字符串 s 中 pos 开始的前 n 个字符

string &insert(int p0, int n, char c);    //此函数在p0处插入n个字符c
iterator insert(iterator it, char c);    //在it处插入字符c,返回插入后迭代器的位置
void insert(iterator it, const_iterator first, const_iterator last);    //在it处插入[first,last)之间的字符
void insert(iterator it, int n, char c);    //在it处插入n个字符c
备注:相关代码演示详见视频教程!

5、string字符串类的删除操作
iterator erase(iterator first, iterator last);    //删除 [first,last)之间的所有字符,返回删除后迭代器的位置
iterator erase(iterator it);    //删除it指向的字符,返回删除后迭代器的位置
string &erase(int pos = 0, int n = npos);    //删除pos开始的n个字符,返回修改后的字符串
备注:相关代码演示详见视频教程!

6、小作业:
将以下字符串以#号为分隔符进行分割,将分割后的各个子串的结果存储到一个 vector 中,字符串如下:
123#ab##cctry.com#

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
教程在线观看地址:
https://www.bilibili.com/video/av38388453/?p=54
MP4高清视频下载地址:链接:https://pan.baidu.com/s/1ddDjIycf2KXtzORBjWMbpw 提取码:zk76
本节课件下载(回复后可见):
游客,如果您要查看本帖隐藏内容请回复

备注:VIP会员可免费下载本站所有资源(点击查看)
提示:通过购买VC驿站U盘打包(点击查看)也可加入终身Vip会员^_^

评分

参与人数 2驿站币 +3 热心值 +3 收起 理由
23_avatar_small 滑翔伞萌哒哒! + 1 + 1 很给力!
61_avatar_small 轩墨 + 2 + 2 支持原创!

查看全部评分





上一篇:《实用C++》第51课 C++中的字符串类stirng①
80_avatar_middle
最佳答案
0 
2#
在线会员 发表于 2018-6-29 08:48:08 | 只看该作者
坚持学习!
98_avatar_middle
最佳答案
0 
3#
在线会员 发表于 2018-6-29 08:53:41 | 只看该作者
谢谢提供
继续学习

74_avatar_middle
最佳答案
0 
4#
在线会员 发表于 2018-6-29 09:53:39 | 只看该作者
看看        
74_avatar_middle
最佳答案
0 
5#
在线会员 发表于 2018-6-29 11:59:13 | 只看该作者
看下。··
78_avatar_middle
最佳答案
0 
6#
在线会员 发表于 2018-6-29 12:10:37 | 只看该作者
不错,谢谢
66_avatar_middle
最佳答案
0 
7#
在线会员 发表于 2018-6-29 15:28:05 | 只看该作者
将以下字符串以#号为分隔符进行分割,将分割后的各个子串的结果存储到一个 vector 中,字符串如下: 123#ab##cctry.com#
82_avatar_middle
最佳答案
0 
8#
在线会员 发表于 2018-6-29 17:34:13 | 只看该作者

坚持学习!
95_avatar_middle
最佳答案
0 
9#
在线会员 发表于 2018-6-29 20:21:32 | 只看该作者
谢谢提供
继续学习
95_avatar_middle
最佳答案
0 
10#
在线会员 发表于 2018-6-29 20:28:59 | 只看该作者
老大视频格式要不是exe格式就好了
75_avatar_middle
最佳答案
0 
11#
在线会员 发表于 2018-6-30 12:19:25 | 只看该作者
谢谢分享,楼主辛苦了!
23_avatar_middle
最佳答案
0 
12#
online_vip 发表于 2018-6-30 14:29:04 | 只看该作者
学习学习,谢谢!
96_avatar_middle
最佳答案
0 
13#
在线会员 发表于 2018-6-30 16:53:38 | 只看该作者
学习中!!~~努力开发自己的小程序
86_avatar_middle
最佳答案
0 
14#
在线会员 发表于 2018-7-2 14:52:58 | 只看该作者
2xbf2xbf2xbf2xbf2xbf
34_avatar_middle
最佳答案
0 
15#
在线会员 发表于 2018-7-2 22:22:46 | 只看该作者
不错不错,更新很快
40_avatar_middle
最佳答案
0 
16#
online_vip 发表于 2018-7-4 19:59:15 | 只看该作者
认真学习!!!
28_avatar_middle
最佳答案
0 
17#
在线会员 发表于 2018-7-4 20:50:42 | 只看该作者
学习学习!
51_avatar_middle
最佳答案
0 
18#
在线会员 发表于 2018-7-5 06:25:28 | 只看该作者
string substr(int pos = 0, int n = npos) const;    //返回 pos 开始的 n个字符组成的字符串
24_avatar_middle
最佳答案
0 
19#
online_vip 发表于 2018-7-6 23:01:00 | 只看该作者
继续学习。。。
87_avatar_middle
最佳答案
0 
20#
online_vip 发表于 2018-7-7 19:59:55 | 只看该作者
以下字符串以#号为分隔符进行分割,将分割后的各个子串的结果存储到一个 vector 中,字符串如下:
123#ab##cctry.com#
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-12-5 23:27

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表
时时彩平台排名