boost::split
От: RvP-ARS  
Дата: 07.05.11 19:32
Оценка:
Здравствуйте, подскажите пожалуйста:
ни для кого не секрет конструкция вида
std::string str("this is string sample");
std::vector<std::string> rez;
boost::split(rez, str, boost::is_any_of(" ,."), boost::token_compress_on);

а как изменить данную конструкцию, чтобы можно было разбивать строку не по отдельному символу(набору символов) а по "слову"?
Заранее благодарен
Re: boost::split
От: Ytz https://github.com/mtrempoltsev
Дата: 07.05.11 19:56
Оценка:
Здравствуйте, RvP-ARS, Вы писали:

RA>а как изменить данную конструкцию, чтобы можно было разбивать строку не по отдельному символу(набору символов) а по "слову"?


Так устроит?

string str1("abc-*-ABC-*-aBc");
typedef split_iterator<string::iterator> string_split_iterator;
for(string_split_iterator It = 
    make_split_iterator(str1, first_finder("-*-", is_iequal()));
    It!=string_split_iterator();
    ++It)
{
    cout << copy_range<std::string>(*It) << endl;
}

// Output will be:
// abc
// ABC
// aBC
Re[2]: boost::split
От: RvP-ARS  
Дата: 07.05.11 20:03
Оценка:
Здравствуйте, Ytz, Вы писали:
Ytz>Так устроит?

Это из того же примера, только выше... Что-то я тупонул...
Спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.