|
Boost Users : |
From: Thore Karlsen (sid_at_[hidden])
Date: 2005-06-18 11:05:23
On Sat, 18 Jun 2005 16:19:10 +0200, Yuval Ronen <ronen_yuval_at_[hidden]>
wrote:
>Hi.
>
>I need to tokenize a string according to a delimiter sequence, rather
>than the common "any-of-characters" algorithm. What I mean is that if
>I'll use the sequence "ab" to split the string "1ab2ab3", I'll get {
>"1", "2", "3" }, but if I'll use the same "ab" sequence to split a
>slightly different "1ab2ba3" string, I'll get { "1", "2ba3" }.
>
>I've looked at the tokenizer lib and string_algo's split method, but
>couldn't find any evidence that any of them already contain such a
>feature. Is there such a thing in Boost?
You can use split iterators in string_algo:
string str = "1ab2ab3";
vector<string> results;
typedef boost::split_iterator<std::string::iterator>
string_split_iterator;
for (string_split_iterator it = make_split_iterator(str,
first_finder("ab")); it != string_split_iterator();
++it)
{
results.push_back(*it);
}
-- Be seeing you.
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net