c++ split(getline实现)
众所周知
c++中string没有自带的split函数(亏你还是老大哥)
网上关于split函数的优秀写法很多
本人不再赘述
今几日翻C++API时发现了getline一个有趣的方法
istream& getline (istream& is, string& str, char delim);
第一个参数是一个输入流,第二个参数是一个对字符串的常引用,第三个参数是分割符。
在读入时遇到分割符则停止
可以用这个来实现单分割符的split功能
1 #include <iostream> 2 #include <string> 3 #include <sstream> 4 using namespace std; 5 6 int main() { 8 stringstream input("45,65,45231,4646,4564"); 9 string str; 11 while (getline(input, str, ',')) { 12 cout << str << endl; 13 } 15 return 0; 16 }
简单方便快速。
博客迁移到https://luotianqi777.github.io/