replace

Syntax:

    #include <string>
    string& replace( size_type index, size_type num, const string& str );
    string& replace( size_type index1, size_type num1, const string& str, size_type index2, size_type num2 );
    string& replace( size_type index, size_type num, const Char* str );
    string& replace( size_type index, size_type num1, const Char* str, size_type num2 );
    string& replace( size_type index, size_type num1, size_type num2, Char ch);
 
    string& replace( iterator start, iterator end, const string& str );
    string& replace( iterator start, iterator end, const Char* str );
    string& replace( iterator start, iterator end, const Char* str, size_type num );
    string& replace( iterator start, iterator end, size_type num, Char ch );
    string& replace( iterator start, iterator end, input_iterator start2, input_iterator end2 );

The function replace() either:

  • replaces up to num characters of the current string with characters from str, beginning at index,
  • replaces up to num1 characters of the current string (starting at index1) with up to num2 characters from str beginning at index2,
  • replaces up to num characters of the current string with characters from str, beginning at index in str,
  • replaces up to num1 characters in the current string (beginning at index1) with num2 characters from str beginning at index2,
  • replaces up to num1 characters in the current string (beginning at index) with num2 copies of ch,
  • replaces the characters in the current string from start to end with str,
  • replaces characters in the current string from start to end with num characters from str,
  • or replaces the characters in the current string from start to end with num copies of ch.

For example, the following code displays the string “They say he carved it himself…find your soul-mate, Homer.”

     string s = "They say he carved it himself...from a BIGGER spoon";
     string s2 = "find your soul-mate, Homer.";
     s.replace( 32, s.length() - 32, s2 );
     cout << s << endl;

Related Topics: insert