目录
1.查找(find)
查找并返回s在str中第一次出现的位置,位置从0开始
查找并返回s在str中第一次出现的位置,位置从pos开始
从str末尾查找并返回s在str中第一次出现的位置(rfind)
找到s在str中第一次出现和最后一次出现的位置(find_first_of 和 find_last_of)
int main() {
string str = "i love china. china love me";
string s = "love";
cout << str.find(s);
int pos=2;
cout << str.find(s,pos);
cout << str.rfind(s);
cout << str.find_first_of(s)<< str.find_last_of(s);
}
2.插入
将s所指向的字符串插入在str中位置x之前,改变本串(insert)
将字符串s添加到str尾部,改变本串(append)
int main() {
string str = "i love . china love me";
string s = "china";
int x=7;
cout << str.insert(x, s) << endl;
cout << str.append(s) << endl;
}
3.截取(substr)
取子串,取str中位置pos开始的n个字符
int main() {
string str = "i love china. china love me";
int pos=2,n=22;
cout << str.substr(2, 22) << endl; // love china. china love
}
4.删除(erase)
删除str中pos位置及之后的所有字符,改变本串
删除str中pos位置及之后的共n个字符,改变本串
int main() {
string str1 = "i love china. china love me";
int pos=12;
cout << str1.erase(12) << endl;
string str2 = "i love china. china love me";
int pos=7,n=18;
cout << str2.erase(7, 18) << endl;
}
5.替换(replace)
用s替换str中从pos开始(包括0)的n个字符的子串
int main() {
string str = "i love . china love me";
string s = "china";
int pos=3,n=7;
cout << str.replace(pos,n,s);
}
6.字符串和数组转换
int main()
{
//字符串转数组
string str;
cin>>str;
int a[500];
for(int i=0;i<str.length();i++){
a[i]=str[i]-'0';
cout<<a[i]<<" ";
}
//数字转字符串
int n;
cin>>n;
string s;
s=to_string(n);
}