创建
#include <string> // 注意不是 <string.h>
string s;
转字符数组
string.data()不保证末尾有空字符string.c_str()保证末尾有空字符,建议用这个
获取长度
string.size()string.length()strlen(string.c_str())
注意!
这三个函数(以及下面将要提到的
find函数)的返回值类型都是size_t(unsigned long).因此,这些返回值不支持直接与负数比较或运算,建议在需要时进行强制转换.
查找
string.find(str, pos = 0)查找字符串中一个字符/字符串在含pos之后第一次出现的位置,如果没有出现,则为string::npos(类型为size_t/unsigned long,需转换)
截取
string.substr(pos, len)返回从pos位置开始截取最多len个字符组成的字符串
插入
string.insert(index, count, char)在index处连续插入count个charstring.insert(index, str)在index处插入str
擦除
string.erase(index, count = string.length())将从含index开始的count个字符删除
替换
string.replace(pos, count, str)将从含pos后面的count个字符替换为strstring.replace(first: iterator, last: iterator, str)将以含first开始,不含last结束的字串替换为str