使用多个分隔符拆分字符串
处理文本时,通常需要将字符串拆分为单独的单词或标记。如果单个分隔符不够用,这里介绍如何利用多个分隔符来完成此任务。
假设其中一个分隔符是换行符,以下代码片段演示了如何从字符串流中读取文本、分割将其分成行,并根据指定的分隔符进一步细分每行。
std::stringstream stringStream(inputString); std::string line; while(std::getline(stringStream, line)) { std::size_t prev = 0, pos; while ((pos = line.find_first_of(" ';", 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)); }
在此代码中,读取并随后处理行字符串。 find_first_of 函数用于搜索指定分隔符字符串(在本例中为“ ';”)中第一次出现的任何字符。提取分隔符之间的单词,并且还捕获行首或行尾的单词。然后将标记添加到 wordVector。
以上是如何在 C 中使用多个分隔符分割字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!