string数据拆分c++
时间: 2024-06-08 10:03:05 浏览: 68
在C++中,可以使用字符串的substr函数来拆分字符串。substr函数可以从一个字符串中获取一个子串,该子串从指定位置开始,并具有指定的长度(如果没有指定长度,则将提取到字符串的末尾)。可以使用循环来遍历整个字符串,并在每个分隔符处使用substr函数来获取子串。以下是一个示例代码:
```
#include <iostream>
#include <string>
#include <vector>
using namespace std;
vector<string> split(string str, char delimiter) {
vector<string> result;
string token;
for (int i = 0; i < str.size(); i++) {
if (str[i] == delimiter) {
result.push_back(token);
token = "";
} else {
token += str[i];
}
}
result.push_back(token);
return result;
}
int main() {
string str = "C++ is a powerful programming language.";
char delimiter = ' ';
vector<string> tokens = split(str, delimiter);
for (int i = 0; i < tokens.size(); i++) {
cout << tokens[i] << endl;
}
return 0;
}
```
在上面的示例代码中,split函数将字符串str和分隔符delimiter作为输入参数,并返回一个vector类型的结果。函数使用一个循环遍历整个字符串,并在每个分隔符处使用substr函数来获取子串。最后,将每个子串添加到vector中并返回。
阅读全文