C++:取一个长string中间的一部分

// 以 "1417_124835_31366.jpg" 为例

String str_long = "1417_124835_31366.jpg";

//记录位置
int nPos1 = str_long.find_first_of("_");  //第一个出现 _ 的下标
int nPos2 = str_long.find_last_of("_"); // 最后一个出现 _ 的下标
int nPos3 = str_long.find_last_of("."); //最后一个出现 . 的下标

int num1 = stoi(str_long.substr(nPos1 + 1, nPos2 - nPos1 - 1));  // 124835
int num2 = stoi(str_long.substr(nPos2 + 1, nPos3 - nPos2 - 1));  // 31366

上一篇:【阿里笔试】合法连续子段


下一篇:蓝桥杯省赛数列求值