string

基础操作#

str.size(); || str.length();//返回字符串的长度
str1.swap(str2); || swap(str1, str2);//交换str1和str2,建议用第一种方法
str.substr(num1, num2);//返回str中以num1为起点的num2个字符组成的子串
reverse(str.begin(), str.end());//将str首尾反转
string str(num, char);//生成一个包含mun个char字符的字符串
sort(str1.begin(), str1.end());//排序

赋值拷贝#

部分拷贝#

str1.assign(str2, num1, num2);//将str2中下标为num1的字符为起始拷贝num2个字符到str1中 
str.copy(ch, num1, num2);//将str中下标为num1的字符为起始拷贝num2个字符到ch中 

完整拷贝#

str1 = str2;

字符串连接#

直接连接#

str1 += str2;//将str2连接到str1后

部分连接#

str1.append(str2, num1, num2);//将str2中下标为num1为起点的num2个字符连接到str1后 

字符串比较#

str1小于str2返回一个小于0的数,相等返回0,大于返回一个大于0的数,也支持char* 的比较

完整和完整比较#

str1.compare(str2); || strcmp(str1, str2);//str1和str2直接比较 

部分和完整比较#

str1.compare(num1, num2, str2);//str1以下标为num1为起点的num2个字符和str2比较

部分和部分比较#

str1.compare(num1, num2, str2, num3, num4);//str1以下标为num1为起点的num2个字符和str2以下标为num3为起点的num4个字符比较

字符串替换#

部分取代部分#

replace中的str2也可以用char* 来代替

str1.replace(num1, num2, str2, num3, num4);//用str2中下标为num3为起点的num4个字符取代str1中下标为num1为起点的num2个字符

单个字符连续取代部分#

str.replace(num1, num2, num3, char);//用num3个char取代str中以下标num1为起点的num2个字符 

字符串插入#

str1.insert(num1, str2, num2, num3);///在str1的下标为num1的位置插入str2中以下标num2为起点的num3个字符
str1.insert(num1, num2, char);//在str1的num1位置插入num2个char

字符串清空#

全部清空#

str.erase();//全部清空 

向后清空#

str.erase(num);//清空以下标num为起点的后面所有字符

分段清空#

str.erase(num1, num2);//清空下标num1为起点的num2个字符

字符串查找#

str和char* 都兼容

正向查找#

str.find('char');//从头查找char在str中第一次出现的位置
str.find('char', n);//从下标n为起点,向后查找char第一次出现的位置
str.find_first_of('char');
str.find_first_of('char', n);//find_first_of 用法与 find 一样
str.find_first_not_of('char');//从头开始查找第一次不是char的位置
str.find_first_not_of('char', n);//从下标num开始,向后查找第一次不是char的位置

逆向查找#

用法与正向查找相似

str.rfind('char');	
str.find_last_of('char');
str.find_last_of('char', n); 
str.find_last_not_of('char');
str.find_last_not_of('char', n);
posted @   xj22yangyichen  阅读(29)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示
主题色彩