请用C++语言写一个string按符号分割成vector<string>的方法
时间: 2024-02-12 09:03:53 浏览: 80
好的,以下是一个简单的实现:
```c++
#include <iostream>
#include <vector>
#include <string>
using namespace std;
vector<string> split(string str, char delimiter) {
vector<string> res;
string token;
for (int i = 0; i < str.length(); i++) {
if (str[i] == delimiter) {
res.push_back(token);
token = "";
} else {
token += str[i];
}
}
res.push_back(token);
return res;
}
int main() {
string str = "This is a test string.";
vector<string> res = split(str, ' ');
for (int i = 0; i < res.size(); i++) {
cout << res[i] << endl;
}
return 0;
}
```
这个方法接受两个参数,一个是需要分割的字符串,一个是分割符。它会将字符串按照分割符分割成多个子字符串,并存储在一个 vector<string> 中返回。注意,最后一个子字符串后面也需要加上分割符,否则最后一个子字符串会被忽略。
阅读全文