複数の区切り文字による文字列の分割 [重複]
テキスト処理では、文字列を個々の単語またはトークンに分割する必要がよくあります。標準の文字列分割手法は単一の区切り文字の処理には優れていますが、複数の区切り文字を使用するとタスクはより困難になります。
問題:
文字列と区切り文字のセットが与えられた場合、どのようにするか指定されたすべての区切り文字を考慮しながら文字列を単語に分割できますか?
解決策:
複数の区切り文字を使用して文字列を効果的に分割するには、文字列ストリームの組み合わせを利用します。および部分文字列操作。提供されているコードの修正バージョンを次に示します。
std::stringstream stringStream(inputString); std::string line; while(std::getline(stringStream, line)) { std::size_t prev = 0, pos; auto delimiters = " ';"; // Customize delimiter string here while ((pos = line.find_first_of(delimiters, prev)) != std::string::npos) { if (pos > prev) wordVector.push_back(line.substr(prev, pos-prev)); prev = pos+1; } if (prev < line.length()) wordVector.push_back(line.substr(prev, std::string::npos)); }
説明:
以上が複数の区切り文字を使用して文字列を分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。