C++标准库并不像Java一样提供了string的split方法,关于split的实现方式有很多,这里介绍一种使用标准库和模板来实现的方法,非常简单,是stackoverflow上的高票回答,具体实现如下:
template<
typename Out>
void split(
const std::
string &s,
char delim, Out result) {
std::
stringstream ss;
ss.str(s);
std::
string item;
while (
std::getline(ss, item, delim)) {
*(result++) = item;
}
}
std::
vector<std::string> split(
const std::
string &s,
char delim) {
std::
vector<std::string> elems;
split(s, delim,
std::back_inserter(elems));
return elems;
}
转载请注明原文地址: https://ju.6miu.com/read-25692.html