编写STL程序,自行设计split()函数,要求输入一个字符串和一个分隔符,返回一个字符串向量作为分割结果
时间: 2024-03-14 18:43:47 浏览: 51
js使用split函数按照多个字符对字符串进行分割的方法
5星 · 资源好评率100%
好的,下面是一个简单的实现:
```c++
#include <iostream>
#include <string>
#include <vector>
// split函数,将str按照delim分隔符进行分割
std::vector<std::string> split(const std::string& str, const char delim)
{
std::vector<std::string> result;
std::string token;
std::istringstream tokenStream(str);
while (std::getline(tokenStream, token, delim))
{
result.push_back(token);
}
return result;
}
int main()
{
std::string input = "Hello World,How are you today?";
char delim = ',';
std::vector<std::string> result = split(input, delim);
for (const auto& s : result)
{
std::cout << s << std::endl;
}
return 0;
}
```
上述程序中,我们使用了 `std::istringstream` 类型的 `tokenStream` 对象,将输入字符串 `str` 进行分割,分隔符为 `delim`。`std::getline` 函数用于从 `tokenStream` 中获取每个子串,并将其存储到 `result` 向量中。最后,我们输出了分割结果。
阅读全文