Test Code/C++

Mingw - Split 함수 만들기

yaks101 2013. 12. 21. 00:46

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;

}