#include<iostream>
#include<string>
using namespace std;
int main() {
//////////////////////////////////////////////////////////////////////////////
//删除制定位置字符串erase(删除起始位置, 以起始位置开始的相对结束位置);
//会改变字符串原有内容!!!!!!
std::string str = "0123456789";
str.erase(0, 5);
std::cout << str << std::endl;
//////////////////////////////////////////////////////////////////////////////
//截取字符串 str.substr(截取起始位置, 以起始位置开始的相对结束位置);
//如果str.substr(截取位置),不输入第二个参数 就是从截取位置到最后位置
//不会改变字符串原有内容,返回值是要截取的字符串
str = "01234567890";
std::cout << str.substr(2, 3) << std::endl;
std::cout << str << std::endl;
//////////////////////////////////////////////////////////////////////////////
//替换字符串 str..replace(截取起始位置,以起始位置开始的相对结束位置)
//第三个参数可以是 char*或 string 类型
str = "01234567890";
std::string str1 = "AAAAAA";
std::cout << str.replace(2,5, str1) << std::endl;
std::cout << str.replace(2, 4, "_ABCD_") << std::endl;
//////////////////////////////////////////////////////////////////////////////
//查找字符串位置 str.find("RD"),参数是 char*或者 string 类型都可以
std::string cc = "RD";
str = "01234567890 HELLO WORD";
std::cout << str.size() << std::endl;
//自己判断 find函数的返回值 不能大于 字符串的最大个数,不能小于0
size_t idx = str.find("RD");
if (idx < str.size() && idx > 0) {
std::cout << "找到了位置在" <<idx<< std::endl;
}
else {
std::cout << "没找到" << std::endl;
}
//string::npos表示不存在的位置 find的返回值是std::string::size_type 类型的
std::string::size_type pos;
pos = str.find(cc);
if (pos != str.npos) {
std::cout << "找到了位置在" << pos << std::endl;
}
else {
std::cout << "没找到" << std::endl;
}
//////////////////////////////////////////////////////////////////////////////
//插入字符串 str4.insert(插入位置,char*或者string);
str = "01234567890";
str.insert(5,"_ABC_");
std::cout << str << std::endl;
//insert(插入位置,插入字符个数,字符串);
str = "01234567890";
str.insert(5, 5,'Z');
std::cout << str << std::endl;
//insert(插入位置,要插入的char*或string,要插入字符串从0到结束位置);
str = "01234567890";
str.insert(5,"HELLO", 3);
std::cout << str << std::endl;
//insert(插入位置,要插入的char*或string,要插入字符串的起始位置,要插入字符串的结束位置);
str = "01234567890";
string sstr = "HELLO";
str.insert(5, sstr,1,3);
std::cout << str << std::endl;
cin.get();
return 0;
}
string基本操作:删除制定位置,截取,替换,查找字符串位置,插入字符串
猜你喜欢
转载自blog.csdn.net/weixin_42204566/article/details/84709226
今日推荐
周排行