Mingw - Split 함수 만들기
STL string 문자열을 특정 구분자로 잘라서 Vector에 넣어서 리턴해준다.
- 파일명 : Split_Test.cpp
- 컴파일 : g++ -std=c++11 -Wall -o Split_Test.exe Split_Test.cpp
※ auto 키워드 사용시 -std=c++11 옵션 추가
#include <vector>
#include <iostream>
#include <string>
using namespace std;
vector<string> StringSplit(const string& strContent, const char& szSplit) {
string strNext;
vector<string> vRet;
for (auto str:strContent)
{
if (str == szSplit)
{
if (!strNext.empty())
{
vRet.push_back(strNext);
}
else
{
vRet.push_back("");
}
strNext.clear();
}
else
{
strNext += str;
}
}
if (!strNext.empty())
{
vRet.push_back(strNext);
}
return vRet;
}
int main ()
{
string strContent("aaaa,bbbb,cccc,,dddd,eeee,ffff");
vector<string> vec;
vec = StringSplit(strContent, ',');
for(auto i:vec)
{
cout << i << endl;
}
return 0;
}