• 【转】C++ 字符串替换


    http://www.cnblogs.com/rezkk/archive/2009/02/07/1385781.html
    #include   
    <string>   
      #include   
    <iostream>   
        
      
    using   namespace   std;   
        
      
    string&   replace_all(string&   str,const   string&   old_value,const   string&   new_value)   
      {   
      
    while(true)   {   
      
    string::size_type   pos(0);   
      
    if(   (pos=str.find(old_value))!=string::npos   )   
      str.replace(pos,old_value.length(),new_value);   
      
    else   break;   
      }   
      
    return   str;   
      }   
        
      
    string&   replace_all_distinct(string&   str,const   string&   old_value,const   string&   new_value)   
      {   
      
    for(string::size_type   pos(0);   pos!=string::npos;   pos+=new_value.length())   {   
      
    if(   (pos=str.find(old_value,pos))!=string::npos   )   
      str.replace(pos,old_value.length(),new_value);   
      
    else   break;   
      }   
      
    return   str;   
      }   
        
      
    int   main()   
      {   
      cout   
    <<   replace_all(string("12212"),"12","21")   <<   endl;   
      cout   
    <<   replace_all_distinct(string("12212"),"12","21")   <<   endl;   
      }   
        
      
    //output:   
      
    //22211   
      
    //21221
  • 相关阅读:
    [转]Torch是什么?
    去掉 CONSOLE 窗口(转)
    最短路径问题
    最短路,dijstra算法
    最短路,floyd算法,图的最短路径
    freckles
    还是畅通工程,最小生成树kruskal
    More is better
    畅通工程
    人见人爱
  • 原文地址:https://www.cnblogs.com/fzzl/p/1537088.html
Copyright © 2020-2023  润新知