我希望按and
。
首先,我必须明确表示我不打算使用任何regex
作为分隔符。
我运行以下代码:
#include <iostream>
#include <regex>
#include <boost/algorithm/string.hpp>
int main()
{
std::vector<std::string> results;
std::string text=
"Alexievich, Svetlana and Lindahl,Tomas and Campbell,William";
boost::split(
results,
text,
boost::is_any_of(" and "),
boost::token_compress_off
);
for(auto result:results)
{
std::cout<<result<<"\n";
}
return 0;
}
结果与我的预期不同:
Alexievich,
Svetl
Li
hl,Tom
s
C
mpbell,Willi
m
分隔符中的每个字符似乎都是单独的,而我需要将整个and
作为分隔符。
请不要链接到this boost example,除非您确定它适合我的情况。