C++ String 库 - replace
描述
它替换从字符 pos 开始并跨越 len 个字符的字符串部分。
声明
以下是 std::string::replace 的声明。
string& replace (size_t pos, size_t len, const string& str,
size_t subpos, size_t sublen);
C++11
string& replace (size_t pos,size_t len,const string& str,
size_t subpos, size_t sublen);
C++14
string& replace (size_t pos,size_t len,const string& str,
size_t subpos, size_t sublen = npos);
参数
pos − 它是一个插入点。
str − 它是一个字符串对象。
len − 它包含有关要擦除的字符数的信息。
返回值
它返回 *this。
异常
如果抛出异常,则字符串没有变化。
示例
在下面的 std::string::replace 示例中。
#include <iostream>
#include <string>
int main () {
std::string base="this is a test string.";
std::string str2="n example";
std::string str3="sample phrase";
std::string str4="useful.";
std::string str=base;
str.replace(9,5,str2);
str.replace(19,6,str3,7,6);
str.replace(8,10,"just a");
str.replace(8,6,"a shorty",7);
str.replace(22,1,3,'!');
str.replace(str.begin(),str.end()-3,str3);
str.replace(str.begin(),str.begin()+6,"replace");
str.replace(str.begin()+8,str.begin()+14,"is coolness",7);
str.replace(str.begin()+12,str.end()-4,4,'o');
str.replace(str.begin()+11,str.end(),str4.begin(),str4.end());
std::cout << str << '\n';
return 0;
}
示例输出应该是这样的 −
replace is useful.

