zoukankan      html  css  js  c++  java
  • boost replace_if replace_all_regex_copy用法

    #include <boost/algorithm/string.hpp>            // for is_any_of
    #include <boost/range/algorithm/replace_if.hpp>  // for replace_if
    #include <string>
    #include <iostream>
    
    std::string someString = "abc.def-ghi";
    std::string toReplace = ".-";
    std::string processedString =
       boost::replace_if(someString, boost::is_any_of(toReplace), ' ');
    
    int main()
    {
        std::cout << processedString;
    }
    This modifies the original, so if you need to keep it, you can use boost::replace_copy_if:
    
    #include <boost/algorithm/string.hpp>
    #include <boost/range/algorithm/replace_copy_if.hpp>
    #include <string>
    #include <iostream>
    #include <iterator>    // for back_inserter
    
    std::string someString = "abc.def-ghi";
    std::string toReplace = ".-";
    
    int main()
    {
        std::string processedString;
        boost::replace_copy_if(someString,
            std::back_inserter(processedString), boost::is_any_of(toReplace), ' ');
        std::cout << processedString;
    }


    replace_all_regex_copy

    #include <iostream>                                                                                                                                                                  
    #include <boost/algorithm/string.hpp>                                                                                                                                                
    #include <boost/algorithm/string/regex.hpp>                                                                                                                                          
    
    int main(int argc, char** argv) {                                                                                                                                                    
        std::string someString = "abc.def-ghi";                                                                                                                                          
        std::cout << someString << std::endl;                                                                                                                                            
        std::string toReplace = "[.-]"; // character class that matches . and -                                                                                                          
        std::string replacement = " ";                                                                                                                                                   
        std::string processedString =                                                                                                                                                    
            boost::replace_all_regex_copy(someString, boost::regex(toReplace), replacement);                                                                                             
        std::cout << processedString << std::endl;                                                                                                                                       
        return 0;                                                                                                                                                                        
    } 


  • 相关阅读:
    笔记本CPU
    [转]Linux管理员新手易犯的十种错误
    Linux 如何禁止用户登录
    Linux 工作人员之间的交互
    双核处理器
    Ant时间戳的使用
    [转]linux+php5.1.6+mysql5.0.2+apache2.0.55安装配置说明
    ADDM 报告结果中的相关术语
    Mysql 用户密码
    [转]Linux系统中用户帐户清洁与安全方法
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9410053.html
Copyright © 2011-2022 走看看