C++字符串实现字符串分割方法
时间: 2023-11-10 22:32:46 浏览: 138
c++字符串分割的方法
5星 · 资源好评率100%
在 C++ 中,可以使用标准库中的 `std::string` 类和 `std::stringstream` 类来实现字符串分割。
具体的实现方法如下:
```cpp
#include <iostream>
#include <string>
#include <sstream>
#include <vector>
using namespace std;
vector<string> split(const string& str, char delim)
{
vector<string> tokens;
stringstream ss(str);
string token;
while (getline(ss, token, delim)) {
tokens.push_back(token);
}
return tokens;
}
int main()
{
string input = "Hello,World,How,Are,You";
char delimiter = ',';
vector<string> result = split(input, delimiter);
for (const auto& s : result) {
cout << s << endl;
}
return 0;
}
```
在上面的代码中,我们定义了一个名为 `split` 的函数,它接受一个字符串和一个分隔符作为参数,并返回一个字符串向量,其中每个字符串都是原始字符串中的一个子串。函数内部使用 `std::stringstream` 类来将原始字符串分割成子串,并将这些子串添加到向量中。最后,函数返回向量。
在 `main` 函数中,我们调用 `split` 函数来将字符串 `input` 按照逗号分隔符分割成多个子串,并将结果存储在名为 `result` 的字符串向量中。然后,我们使用 `for` 循环遍历向量中的每个字符串,并将其打印到标准输出中。
这样就实现了一个简单的字符串分割函数。注意,在实际编程中,我们应该考虑一些特殊情况,比如空字符串或者分隔符在字符串开头或结尾的情况。
阅读全文