C ++ Substract一个字符串的结尾,不知道结果的长度

时间:2015-09-25 18:15:13

标签: c++

我有一个这样的字符串:001," John Marvin"," doctor","全职" 我想删除(001)之后的所有内容,但是,(001)的长度并不总是3,所以我不能把它放在像这样的东西:

string chain = "001,\"John Marvin\",\"doctor\", \"full time\""; 

std::string partial = chain.substr(0,3);

在这种情况下我该如何处理?

1 个答案:

答案 0 :(得分:2)

您可以找到第一个逗号的索引,并使用它来确定切断字符串的位置。

类似的东西:

string chain = "001,\"John Marvin\",\"doctor\", \"full time\"";
int cutoff = chain.find(',');
string newString = chain.substr(0, cutoff);

经过测试here