C++ 字串庫 - 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.
string.htm
廣告