在C++中,string split函數的作用是將一個字符串按照指定的分隔符分割成多個子串,并將這些子串存儲在一個容器中(如vector或數組)返回。
通常情況下,我們需要將一個字符串按照空格、逗號或其他特定的字符進行分割,然后將分割后的子串用于后續的處理和分析。String split函數提供了一種方便的方式來實現這個功能,而不需要手動編寫復雜的字符串處理算法。
下面是一個使用string split函數的示例代碼:
#include <iostream>
#include <string>
#include <vector>
std::vector<std::string> split(const std::string& str, char delimiter) {
std::vector<std::string> tokens;
std::string token;
std::istringstream tokenStream(str);
while (std::getline(tokenStream, token, delimiter)) {
tokens.push_back(token);
}
return tokens;
}
int main() {
std::string str = "Hello,World,!";
std::vector<std::string> result = split(str, ',');
for (const auto& token : result) {
std::cout << token << std::endl;
}
return 0;
}
以上代碼將字符串"Hello,World,!"按照逗號分割,將分割后的子串存儲在一個vector中,并依次輸出每個子串。輸出結果為:
Hello
World
!
可以看到,使用string split函數可以方便地將一個字符串分割成多個子串,供后續的處理和分析使用。