)(is_any_of私は次の関数でboost/algorithm/string.hpp
で提供split()
機能を使用しようとしています:Cはブースト++:Split関数を
vector<std::string> splitString(string input, string pivot) { //Pivot: e.g., "##"
vector<string> splitInput; //Vector where the string is split and stored
split(splitInput,input,is_any_of(pivot),token_compress_on); //Split the string
return splitInput;
}
に次の呼び出し:
string hello = "Hieafds##addgaeg##adf#h";
vector<string> split = splitString(hello,"##"); //Split the string based on occurrences of "##"
をに文字列を分割"Hieafds" "addgaeg" "adf"
& "h"
。しかし、私は文字列を単一の#
で分割したくありません。 I は、問題がis_any_of()
であると考えています。
"##"
の出現によってのみ文字列が分割されるように、関数をどのように変更する必要がありますか?
split_regexを試してみてください:http://www.cplusplus.com/faq/sequences/strings/split/#boost-split-regex – user1284631
ありがとう=)私はそれが動作すると思います。 – Enigman
また、iter_split(vec、str、first_finder( "##"))を使用することもできます。 (この回答を参照してください:http://stackoverflow.com/a/5710242/1284631) – user1284631