#include <iostream>
#include <boost/tokenizer.hpp>
#include <vector>
#include <string>
using namespace std;
int main()
{
string s("ABC__, ,DEF,HIJ");
typedef boost::char_separator<char> char_separator;
typedef boost::tokenizer<char_separator> tokenizer;
char_separator comma(",");
tokenizer token(s, comma);
tokenizer::iterator it;
vector<string> strings;
for(it = token.begin(); it != token.end(); it++)
{
//cout << (*it).c_str() << endl;
strings.push_back((*it));
}
std::vector<string>::iterator iv;
for(iv = strings.begin(); iv != strings.end(); iv++)
{
cout << *iv << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Ym9vc3QvdG9rZW5pemVyLmhwcD4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPHN0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkKewogICBzdHJpbmcgcygiQUJDX18sICxERUYsSElKIik7CiAgIHR5cGVkZWYgYm9vc3Q6OmNoYXJfc2VwYXJhdG9yPGNoYXI+IGNoYXJfc2VwYXJhdG9yOwogICB0eXBlZGVmIGJvb3N0Ojp0b2tlbml6ZXI8Y2hhcl9zZXBhcmF0b3I+IHRva2VuaXplcjsKCiAgIGNoYXJfc2VwYXJhdG9yIGNvbW1hKCIsIik7CiAgIHRva2VuaXplciB0b2tlbihzLCBjb21tYSk7CiAgIHRva2VuaXplcjo6aXRlcmF0b3IgaXQ7CgogICB2ZWN0b3I8c3RyaW5nPiBzdHJpbmdzOwoKICAgZm9yKGl0ID0gdG9rZW4uYmVnaW4oKTsgaXQgIT0gdG9rZW4uZW5kKCk7IGl0KyspCiAgIHsKICAgICAgLy9jb3V0IDw8ICgqaXQpLmNfc3RyKCkgPDwgZW5kbDsKICAgICAgc3RyaW5ncy5wdXNoX2JhY2soKCppdCkpOwogICB9CgogICBzdGQ6OnZlY3RvcjxzdHJpbmc+OjppdGVyYXRvciBpdjsKICAgZm9yKGl2ID0gc3RyaW5ncy5iZWdpbigpOyBpdiAhPSBzdHJpbmdzLmVuZCgpOyBpdisrKQogICB7CiAgICAgIGNvdXQgPDwgKml2IDw8IGVuZGw7CiAgIH0KICAgcmV0dXJuIDA7Cn0=