例一:
// ******_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個字...