【发布时间】:2011-10-29 21:08:06
【问题描述】:
对你们来说应该很容易.....
我正在使用 Boost 使用标记器,我想创建一个以逗号分隔的标记。这是我的代码:
string s = "this is, , , a test";
boost::char_delimiters_separator<char> sep(",");
boost::tokenizer<boost::char_delimiters_separator<char>>tok(s, sep);
for(boost::tokenizer<>::iterator beg= tok.begin(); beg!=tok.end(); ++beg)
{
cout << *beg << "\n";
}
我想要的输出是:
This is
a test
我得到的是:
This
is
,
,
,
a
test
更新
【问题讨论】:
-
与此问题类似:如果我在您的代码中修改了
this is,,,a test和cout << "<" << *beg << "> ";,我如何也获得空字符串,如<this is> <> <> <a string>?
标签: c++ boost tokenize boost-tokenizer