The string application methods in the C ++ programming language are diversified. Each application method can help us to meet specific functional requirements. Here we will give you a detailed description of one of the important usage, the application method of the C ++ replace () function.
- basic_string::max_size
The C ++ replace () function returns the maximum number of elements that a string can put. Different from capacity)
- size _ type max _ size( ) const;
- basic_string <char>::size_type cap, max;
- cap = s.capacity ( );
- max = s.max_size ( ); // max=4294967294.
- basic_string::rfind
Search for the given string. Returns the first string value. If no value is found, npos is returned.
Unlike find, rfind starts from npos by default. Others are the same.
- basic_string::replace
Replace the element or substring in the original string. Returns the string after replacement.
1) Use string or C-string to replace the _ Num1 character starting from _ Pos1 in the operation string.
- basic _ string& replace( size _ type _Pos1 ,
size _ type _Num1 , const value _ type* _Ptr );
- basic _ string& replace(size _ type _Pos1 ,
size _ type _Num1 ,const basic _ string _Str );
- string a,b;
- string s ( "AAAAAAAA" );
- string s1p ( "BBB" );
- const char* cs1p = "CCC" ;
- a = s.replace ( 1 , 3 , s1p ); // s= ” ABBBAAAA ”
- b = s.replace ( 5 , 3 , cs1p ); // s= ” ABBBACCC ”
2) replace _ Num1 characters starting from _ Pos2 in the C ++ replace () function
Use _ Num2 characters in C-string to replace _ Num1 characters starting from _ Pos1 in string.
- basic _ string& replace( size _ type _Pos1 ,
size _ type _Num1 , const basic _ string& _Str ,
- size _ type _Pos2 , size _ type );
- basic _ string& replace( size _ type _Pos1 , size _ type _Num1 ,
- const value _ type* _Ptr , size _ type _Num2 );
- string a, b;
- string s ( "AAAAAAAA" );
- string s2p ( "BBB" );
- const char* cs2p = "CCC";
- a = s.replace ( 1 , 3 , s2p , 1 , 2 ); // s= ” ABBAAAA ”
- b = s.replace ( 4 , 3 , cs2p , 1 ); // s= ” ABBAC ”
3) Use _ Count character _ Ch to replace _ Num1 characters starting from _ Pos1 in the operation string.
- basic _ string& replace( size _ type _Pos1 , size _ type _Num1 ,
- size _ type _Count , value _ type _Ch );
- string result;
- string s ( "AAAAAAAA" );
- char ch = 'C';
- result = s.replace ( 1 , 3 , 4 , ch ); // s= ” ACCCCAAAA ”
4) use string or C-string to replace the characters from First0 to Last0 in the operation string.
- basic _ string&replace(iterator First0 ,iterator Last0 ,
const basic _ string& _Str );
- basic _ string&replace(iterator First0 ,iterator _Last0 ,
const value _ type* _Ptr );
- string s ( "AAAAAAAA" ); string s4p ( "BBB" );
- const char* cs4p = "CCC";
- basic_string<char>::iterator IterF0, IterL0;
- IterF0 = s.begin ( ); IterL0 = s.begin ( ) + 3;
- string a, b;
- a = s.replace ( IterF0 , IterL0 , s4p ); // s= ” BBBAAAAA ”
- b = s.replace ( IterF0 , IterL0 , cs4p ); // s= ” CCCAAAAA ”
5) use the _ Num2 characters starting from _ Pos2 in the C ++ replace () function to replace the characters from First0 to Last0 in the operation string.
Use the _ Num2 characters in the C-string to replace the characters from First0 to Last0 in the operation string.
- basic _ string& replace( iterator _First0 , iterator _Last0 ,
- const value _ type* _Ptr , size _ type _Num2 );
- template<class InputIterator> basic _ string& replace(
- iterator _First0 , iterator _Last0 ,
- InputIterator _First , InputIterator _Last );
- IterF3 = s.begin ( ) + 1; IterL3 = s.begin ( ) + 3;
- IterF4 = s.begin ( ); IterL4 = s.begin ( ) + 2;
- a = s.replace ( IterF3 , IterL3 , IterF4 , IterL4 );
- b = s.replace ( IterF1 , IterL1 , cs5p , 4 );
6) Use _ Count character _ Ch to replace the characters from First0 to Last0 in the operation string.
- basic _ string& replace( iterator _First0 , iterator _Last0 ,
- size _ type _Count , value _ type _Ch );
- a = s.replace ( IterF2 , IterL2 , 4 , ch );
- basic_string::swap
Exchange two strings.
- void swap( basic _ string& _Str );
- s1.swap ( s2 );
- basic_string::substr
Returns a string consisting of _ Count characters starting with _ Off (subscript ).
- basic _ string substr( size _ type _Off = 0,
size _ type _Count = npos ) const;
- string s("I love you!") , sub;
- ssub=s.substr( ); // sub= ” I love you! ”
- ssub=s.substr(1); // sub= ” love you! ”
- ssub=s.substr(3,4); // sub= ” ove ”
The content of the C ++ replace () function is described here.