![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Boost Escaped List SeparatorBoost , ,
|
Последовательность побега |
Результат |
новая линия | |
Где- любой персонаж, указанный как цитата, и
// simple_example_2.cpp #include<iostream> #include<boost/tokenizer.hpp> #include<string> int main(){ using namespace std; using namespace boost; string s = "Field 1,\"putting quotes around fields, allows commas\",Field 3"; tokenizer<escaped_list_separator<char> > tok(s); for(tokenizer<escaped_list_separator<char> >::iterator beg=tok.begin(); beg!=tok.end();++beg){ cout << *beg << "\n"; } }
В состав escaped_list_separator входит 2 конструктора. Они являются следующими
explicit escaped_list_separator(Char e = '\\', Char c = ',',Char q = '\"')
Параметр |
Описание |
e | Указывает характер для использования для побеговых последовательностей. По умолчанию соответствует стилю C \ (backslash). Однако вы можете преодолеть, проходя в другом характере. Примером того, когда вы можете захотеть сделать это, является то, что у вас есть много полей, которые являются именами файлов в стиле Windows. Вместо того, чтобы убегать от каждого на своем пути, вы можете изменить побег на что-то другое. |
c | Указывает символ, используемый для разделения полей |
q | Определяет символ, используемый для цитаты. |
escaped_list_separator(string_type e, string_type c, string_type q):
Параметр |
Описание |
e | Любой персонаж в строке e считается персонажем побега. Если дается пустая струна, то нет побеговых символов. |
c | Любой символ в строке c считается разделителем. Если дается пустая строка, то нет разделительных знаков. |
q | Любой символ в строке q считается цитатой. Если дается пустая строка, то нет символов цитаты. |
Чтобы использовать этот класс, передайте его объект в любом месте пакета Tokenizer, где требуется TokenizerFunction.
Parameter | Description |
---|---|
Чар | Тип элементов в токене, как правило,char. |
черты | Класс признаков для типа Char. Это используется для сравнения Чара. По умолчанию для std::char_traits< Char> |
Пересмотрено25 декабря 200625 December, 2006[ORIG_END] -->
Авторское право и копия; 2001 Джон Р. Бандела
Распространяется под лицензией Boost Software License, версия 1.0. (См. сопроводительный файлLICENSE_1_0.txtили копию в) http://www.boost.org/LICENSE_1_0.txt)
Статья Boost Escaped List Separator раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |