fig19_07.cpp

来自「经典vc教程的例子程序」· C++ 代码 · 共 44 行

CPP
44
字号
// Fig. 19.7: fig19_07.cpp
// Demonstrating functions erase and replace
#include <iostream>
#include <string>
using namespace std;

int main()
{
   // compiler concatenates all parts into one string
   string s( "The values in any left subtree"
             "\nare less than the value in the"
             "\nparent node and the values in"
             "\nany right subtree are greater"
             "\nthan the value in the parent node" );
   
   // remove all characters from location 62 
   // through the end of s
   s.erase( 62 );

   // output the new string
   cout << "Original string after erase:\n" << s 
        << "\n\nAfter first replacement:\n";
             
   // replace all spaces with a period
   int x = s.find( " " );
   while ( x < string::npos ) {
      s.replace( x, 1, "." );
      x = s.find( " ", x + 1 );
   }
    
   cout << s << "\n\nAfter second replacement:\n";
   
   // replace all periods with two semicolons
   // NOTE: this will overwrite characters
   x = s.find( "." );
   while ( x < string::npos ) {
      s.replace( x, 2, "xxxxx;;yyy", 5, 2 );
      x = s.find( ".", x + 1 );
   }

   cout << s << endl;
   return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?