我有下一个字符串:
string str1 = "1,123456,name1,4";
string str2;
我想将 str1 的字符串(从第 9 个字母到,
)插入到 str2。
所以 str2 应该是:name1
如果str1 = "2,234567,namenamename,5"
,那么str2
将是:(namenamename
再次:从第 9 个字母到,
)。
我不想使用strtok
.
任何帮助表示赞赏!
您可以std::string::find()
结合使用std::string::substr()
:
std::string::size_type pos = 9;
std::string str1 = "1,123456,name1,4";
std::string::size_type commaPos = str1.find(',', pos);
if (commaPos == std::string::npos)
{
commaPos = str1.length();
}
std::string str2 = str1.substr(pos, commaPos - pos);
这是一个活生生的例子。