Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>The C++ Standard Library has access to these functions as well without using BOOST. Refer to the <a href="http://www.cppreference.com/wiki/string/replace" rel="nofollow noreferrer">replace C++ Reference</a>. Is this the best way ? I guess that's up to discussion. To replace multiple / different characters, you may have to call replace more than once.</p> <pre><code>#include &lt;string&gt; string&amp; replace( size_type index, size_type num, const string&amp; str ); string&amp; replace( size_type index1, size_type num1, const string&amp; str, size_type index2, size_type num2 ); string&amp; replace( size_type index, size_type num, const Char* str ); string&amp; replace( size_type index, size_type num1, const Char* str, size_type num2 ); string&amp; replace( size_type index, size_type num1, size_type num2, Char ch); string&amp; replace( iterator start, iterator end, const string&amp; str ); string&amp; replace( iterator start, iterator end, const Char* str ); string&amp; replace( iterator start, iterator end, const Char* str, size_type num ); string&amp; replace( iterator start, iterator end, size_type num, Char ch ); string&amp; replace( iterator start, iterator end, input_iterator start2, input_iterator end2 ); </code></pre> <p><a href="http://www.cplusplus.com/reference/string/string/replace/" rel="nofollow noreferrer">Example program</a>:</p> <pre><code>// replacing in a string #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int main () { string base="this is a test string."; string str2="n example"; string str3="sample phrase"; string str4="useful."; // function versions used in the same order as described above: // Using positions: 0123456789*123456789*12345 string str=base; // "this is a test string." str.replace(9,5,str2); // "this is an example string." str.replace(19,6,str3,7,6); // "this is an example phrase." str.replace(8,10,"just all",6); // "this is just a phrase." str.replace(8,6,"a short"); // "this is a short phrase." str.replace(22,1,3,'!'); // "this is a short phrase!!!" // Using iterators: 0123456789*123456789* string::iterator it = str.begin(); // ^ str.replace(it,str.end()-3,str3); // "sample phrase!!!" str.replace(it,it+6,"replace it",7); // "replace phrase!!!" it+=8; // ^ str.replace(it,it+6,"is cool"); // "replace is cool!!!" str.replace(it+4,str.end()-4,4,'o'); // "replace is cooool!!!" it+=3; // ^ str.replace(it,str.end(),str4.begin(),str4.end()); // "replace is useful." cout &lt;&lt; str &lt;&lt; endl; return 0; } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload