boost中tokenizer的用法舉例

2021-06-21 09:16:40 字數 1440 閱讀 3736

例一:

// ******_example_1.cpp

#include#include#includeint main()

}

輸出:

thisisa

test

tokenizer預設將單詞以空格和標點為邊界分開.

例二:

#include#include#includeint main()

}

輸出:

field 1

putting quotes around fields, allows commas

field 3

雙引號之間可以有標點.

例三:

// ******_example_3.cpp

#include#include#includeint main();

offset_separator f(offsets, offsets+3);

tokenizertok(s,f);

for(tokenizer::iterator beg=tok.begin(); beg!=tok.end();++beg)

}

輸出:

1225

2001

例4:

// char_sep_example_1.cpp

#include #include #include int main()

輸出:

自定義分隔的標點

例5:

// char_sep_example_2.cpp

#include #include #include int main()

輸出:

<> <> <|> <|> <> <|> <> <> <|> <>

去除

-; ,

保留|但將它看作是分隔符,當兩個分隔符相鄰的時候會自動加空格

例6:

// char_sep_example_3.cpp

#include #include #include int main()

輸出:

<,>

保留標點但將它看作分隔符

boost庫之tokenizer的使用

在tokenizer出現之前,如果我們要對乙個字串進行分割,可能要自己封裝乙個函式。如果有n種不同的分割規則,那麼你 要封裝n個不同的分割函式 太麻煩了!現在好了,boost庫的tokenizer封裝了統一的語法來分割字串,並且提供了三 種常用的分割方式,足以滿足我們的絕大多數程式設計需求。toke...

boost中serialization模組的單體類

singleton.cpp 定義控制台應用程式的入口點。boost實現單體的兩種方式 1.通過boost的pool的singleton實現 2.通過boost的serialization的singleton實現,採用繼承或則定義乙個單體型別 而且serilization模組的單體類具備鎖功能。inc...

切分表示式 寫個tokenizer吧

四則運算表示式由運算數 必定包含數字,可能包含正或負符號 小數點 運算子 包括 以及小括號 和 組成,每個運算數 運算子和括號都是乙個token 標記 現在,對於給定的乙個四則運算表示式,請把她的每個token切分出來。題目保證給定的表示式是正確的,不需要做有效性檢查。在一行中給出長度不超過40個字...