C++ String Library - replace



Description

It replaces the portion of the string that begins at character pos and spans len characters.

Declaration

Following is the declaration for 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);

Parameters

  • pos − It is an insertion point.

  • str − It is a string object.

  • len − It contains information about number of characters to erase.

Return Value

It returns *this.

Exceptions

if an exception is thrown, there are no changes in the string.

Example

In below example for 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;
}

The sample output should be like this −

replace is useful.
string.htm
Advertisements