尽管对于不同的语言有类似的问题,但我找不到这个特定问题的重复项。
我正在尝试将字符串拆分为标记,其中我的分隔符是两个字符的字符串。
我的问题是: 1. 是否可以使用 _tcstok_s 来执行此操作,因为 MSDN 说它需要一组字符作为分隔符,它将匹配任何这些字符?2. 如果用_tcstok_s 无法做到这一点,任何其他可以做到的功能。我的字符串是 TCHAR,我想尽可能多地使用内置函数。
谢谢!
找不到执行此操作的内置函数。我正在使用以下内容,
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;