C ++ /升压上一个以上的字符分割的字符串(C++/Boost split a string on

2019-08-19 06:11发布

这可能是很简单的一次,我看到一个例子,但我怎么概括的boost ::标记生成器或升压::拆分处理由多个字符的分隔符?

例如,“_ _”,没有这些标准分裂的解决方案似乎工作:

boost::tokenizer<boost::escaped_list_separator<string> > 
        tk(myString, boost::escaped_list_separator<string>("", "____", "\""));
std::vector<string> result;
for (string tmpString : tk) {
    result.push_back(tmpString);
}

要么

boost::split(result, myString, "___");

Answer 1:

boost::algorithm::split_regex( result, myString, regex( "___" ) ) ;


Answer 2:

你必须使用splitregex代替: http://www.daniweb.com/software-development/cpp/threads/118708/boostalgorithmsplit-with-string-delimeters



文章来源: C++/Boost split a string on more than one character