C++ 在字符串中提取正整数
场景描述
对字符串进行操作时,有很多场景需要我们提取出字符串中的数字。笔者在这里提供一种方法,供大家参考交流。这种方法可以将字符串中的正整数提取出来保存到vector容器中进行使用。
代码
vector<int> SeperateNum(string num){
int tmp_int = 0;
vector<int> num_vector;
num+=' ';//防止字符串的最后一位是数字
bool flag=0;//用于记录数字是否出现
for (auto i = 0; i < num.length(); i++) {
if (num[i] >= '0' && num[i] <= '9') {
flag=1;
tmp_int =10*tmp_int+ num[i] - '0';
}
else if(flag){
flag=0;
num_vector.push_back(tmp_int);
tmp_int = 0;
}
}
return num_vector;
}