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.