2015-01-15 8 views
0

다른 언어에 대해 유사한 질문이 있지만이 특정 질문에 대한 중복을 찾을 수 없습니다._tcstok_s의 복수 문자 구분 기호

문자열을 토큰으로 분할하려고하는데 여기에서 내 구분 기호는 2 자리 문자열입니다.

내 질문/답변 : 1. _tcstok_s를 사용하여 가능합니까? MSDN에서는 문자 집합과 해당 문자가 일치하는 구분 기호를 사용하기 때문에 가능합니까? 2. _tcstok_s를 사용하여 수행 할 수없는 경우이를 수행 할 수있는 다른 모든 기능. 내 문자열은 TCHAR이며 가능한 한 내장 함수를 사용하고 싶습니다.

감사합니다.

답변

0

이 작업을 수행 할 수있는 inbuilt 함수를 찾을 수 없습니다. 다음을 사용하고 있습니다.

TCHAR *str=TEXT("mango, banana, apple"); 

std::wstring paramStr(str); 
std::wstring delimiter = L", "; 
size_t pos = 0; 
std::string token; 

while ((pos = paramStr.find(delimiter)) != std::string::npos) { 
    token = paramStr.substr(0, pos); 
    std::cout << token << std::endl; 
    paramStr.erase(0, pos + delimiter.length()); 
} 

std::cout << paramStr << std::endl;