2013-03-29 41 views
3

我的下一個字符串:插入子串到另一個字符串

string str1 = "1,123456,name1,4"; 
string str2; 

我想插入到STR2,str1中的字符串(從第9封信,直到,)。

所以STR2應該是:name1

如果str1 = "2,234567,namenamename,5",所以str2將是:namenamename(再次:從9封信,直到,)。我不想使用strtok

任何幫助讚賞!

回答

4

你可以結合使用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); 

這裏是一個live example

相關問題