📅  最后修改于: 2023-12-03 15:23:22.308000             🧑  作者: Mango
在C++中,解析逗号分隔的字符串是一项常见任务。这是因为在很多情况下,数据是以逗号分隔的形式存储在文本文件或数据库中。因此,如果您想从这些数据中提取特定信息,您需要知道如何解析逗号分隔的字符串。
下面是一个简单的示例程序,说明如何解析逗号分隔的字符串。
#include <iostream>
#include <string>
#include <sstream>
#include <vector>
std::vector<std::string> split(const std::string& s, char delimiter)
{
std::vector<std::string> tokens;
std::string token;
std::istringstream tokenStream(s);
while (std::getline(tokenStream, token, delimiter))
{
tokens.push_back(token);
}
return tokens;
}
int main()
{
std::string input = "hello,world,how,are,you";
std::vector<std::string> tokens = split(input, ',');
for (auto& token : tokens)
{
std::cout << token << std::endl;
}
return 0;
}
在这个例子中,我们使用了一个名为split()的函数,它将原始字符串分割成一个字符串向量。该函数使用std :: istringstream类将字符串流分割成字符串。
这个例子输出:
hello
world
how
are
you
解析逗号分隔的字符串是一项很常见的任务。在C++中,您可以使用std::istringstream类和std :: getline()函数来实现它。如果您需要在您的项目中使用这些用法,您现在已经知道如何使用它们了!