Доброго времени суток!Подскажите, пжалуйста, есть ли Си'шные реализации функции explode, из PHP?
Обьявление из документации по PHP:
_______________________________________________________________
explode
(PHP 3, PHP 4, PHP 5)explode -- Разбивает строку на подстроки
Описание
array explode ( string separator, string string [, int limit] )
Возвращает массив строк, полученных разбиением строки string с использованием separator в качестве разделителя. Если передан аргумент limit, массив будет содержать максимум limit элементов, при этом последний элемент будет содержать остаток строки string.Если separator - пустая строка (""), explode() возвращает FALSE. Если separator не содержится в string, то explode() возвращает массив, содержащий один элемент string.
По историческим причинам, функции implode() можно передавать аргументы в любом порядке, но для explode() это недопустимо. separator всегда должен содержать разделитель, а string - исходную строку.
Замечание: Аргумент limit был добавлен в PHP 4.0.1
________________________________________________________________________Интересует иммено вариант с оганичителем. Если кто нибудь предложит свою реализацию, буду очень благодарен.
в бусте есть tokenizer, вот стандартный пример:string s = "This is, a test";
tokenizer<> tok(s);
for(tokenizer<>::iterator beg=tok.begin(); beg!=tok.end();++beg){
cout << *beg << "\n";
}Результат:
This
is
a
test
>[оверквотинг удален]
> for(tokenizer<>::iterator beg=tok.begin(); beg!=tok.end();++beg){
> cout << *beg << "\n";
>
> }
>
>Результат:
>This
>is
>a
>testА на простом Си? не плюс плюс
[...]
>А на простом Си? не плюс плюсА самому поискать?
man strtok, man strchr
>[...]
>>А на простом Си? не плюс плюс
>
>А самому поискать?
>
>man strtok, man strchrда, я знаю... просто то что я написал с приминением этих функций, ну мягко говоря не очень...
подумал может есть оптимизированная и написаная людьми поумнее меня...
>>[...]
>>>А на простом Си? не плюс плюс
>>
>>А самому поискать?
>>
>>man strtok, man strchr
>
>да, я знаю... просто то что я написал с приминением этих функций,
>ну мягко говоря не очень...
>подумал может есть оптимизированная и написаная людьми поумнее меня...Вы ведь говорили что учитесь программировать на Си, верно? Тогда это будет хорошим упражнением, можно понять многие аспекты, связанные со строками в Си.
Ок, всем спасибо. Тема закрыта.