Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Selected Reading
Replace substring with another substring C++
Here we will see how to replace substring with another substring. It replaces the portion of the string that begins at character pos and spans len characters.
The structure of the replace function is like below:
<span class="kwd">string</span><span class="pun">&</span><span class="pln"> replace </span><span class="pun">(</span><span class="typ">size_t</span><span class="pln"> pos</span><span class="pun">,</span><span class="pln"> </span><span class="typ">size_t</span><span class="pln"> len</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">const</span><span class="pln"> </span><span class="kwd">string</span><span class="pun">&</span><span class="pln"> str</span><span class="pun">,</span><span class="pln"> </span><span class="typ">size_t</span><span class="pln"> subpos</span><span class="pun">,</span><span class="pln"> </span><span class="typ">size_t</span><span class="pln"> sublen</span><span class="pun">);</span>
The parameters are pos: It is an insertion point, str : It is a string object, len : It contains information about number of characters to erase.
Algorithm
Step 1: Get the main string, and the string which will be replaced. And the match string Step 2: While the match string is present in the main string: Step 2.1: Replace it with the given string. Step 3: Return the modified string
Example Code
<span class="com">#include</span><span class="pln"> </span><span class="str"><iostream></span>
<span class="com">#include</span><span class="pln"> </span><span class="str"><string></span>
<span class="kwd">using</span><span class="pln"> </span><span class="kwd">namespace</span><span class="pln"> std</span><span class="pun">;</span>
<span class="kwd">int</span><span class="pln"> main </span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span>
<span class="kwd"> string</span><span class="pln"> </span><span class="kwd">base</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">"this is a test string."</span><span class="pun">;</span>
<span class="kwd"> string</span><span class="pln"> str2 </span><span class="pun">=</span><span class="pln"> </span><span class="str">"n example"</span><span class="pun">;</span>
<span class="kwd"> string</span><span class="pln"> str3 </span><span class="pun">=</span><span class="pln"> </span><span class="str">"sample phrase"</span><span class="pun">;</span>
<span class="kwd"> string</span><span class="pln"> str4 </span><span class="pun">=</span><span class="pln"> </span><span class="str">"useful."</span><span class="pun">;</span>
<span class="kwd"> string</span><span class="pln"> str </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">base</span><span class="pun">;</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="lit">9</span><span class="pun">,</span><span class="lit">5</span><span class="pun">,</span><span class="pln">str2</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="lit">19</span><span class="pun">,</span><span class="lit">6</span><span class="pun">,</span><span class="pln">str3</span><span class="pun">,</span><span class="lit">7</span><span class="pun">,</span><span class="lit">6</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="lit">8</span><span class="pun">,</span><span class="lit">10</span><span class="pun">,</span><span class="str">"just a"</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="lit">8</span><span class="pun">,</span><span class="lit">6</span><span class="pun">,</span><span class="str">"a shorty"</span><span class="pun">,</span><span class="lit">7</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="lit">22</span><span class="pun">,</span><span class="lit">1</span><span class="pun">,</span><span class="lit">3</span><span class="pun">,</span><span class="str">'!'</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">(),</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">end</span><span class="pun">()-</span><span class="lit">3</span><span class="pun">,</span><span class="pln">str3</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">(),</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">()+</span><span class="lit">6</span><span class="pun">,</span><span class="str">"replace"</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">()+</span><span class="lit">8</span><span class="pun">,</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">()+</span><span class="lit">14</span><span class="pun">,</span><span class="str">"is coolness"</span><span class="pun">,</span><span class="lit">7</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">()+</span><span class="lit">12</span><span class="pun">,</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">end</span><span class="pun">()-</span><span class="lit">4</span><span class="pun">,</span><span class="lit">4</span><span class="pun">,</span><span class="str">'o'</span><span class="pun">);</span>
<span class="pln"> str</span><span class="pun">.</span><span class="pln">replace</span><span class="pun">(</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">()+</span><span class="lit">11</span><span class="pun">,</span><span class="pln">str</span><span class="pun">.</span><span class="kwd">end</span><span class="pun">(),</span><span class="pln">str4</span><span class="pun">.</span><span class="kwd">begin</span><span class="pun">(),</span><span class="pln">str4</span><span class="pun">.</span><span class="kwd">end</span><span class="pun">());</span>
<span class="pln"> cout </span><span class="pun"><<</span><span class="pln"> str </span><span class="pun"><<</span><span class="pln"> </span><span class="str">'\n'</span><span class="pun">;</span>
<span class="kwd"> return</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span>
<span class="pun">}</span>
Output
replace is useful.
Advertisements
