2013年1月18日のブックマーク (1件)

  • http://homepage2.nifty.com/c-labo/boost_tokenizer.html

    boost::tokenizerの使い方 CSVやタブ区切りファイルのように1行中のレコードがある区切り文字によって区切られているのを分解して処理する場合、標準ライブラリのstrtokを使用するのが一般的です。 しかし、strtokはデリミタが連続した場合空トークンとして扱わなかったり、処理元の文字列を破壊するなど、いまいち使い勝手が悪く自前でトークン分割関数を用意する場合もあります。 1.概要 Boost C++ Librariesに用意されているtokenizerはstrtokより柔軟性があるトークン分割処理クラスです。 下記の例はカンマ区切りの文字列をboost::tokenizerを使ってトークンに分解した例です。strtok(str, ",")とほぼ同じですが、カンマが連続した場合も空トークンとして処理します。 #include <iostream> #include <str