功能实现:
现有一个string对象包含数字字符以及非数字字符,实现删除string对象的末尾非数字字符。
实例:
输入为“0 1 1 2 3 ”
输出为“0 1 1 2 3”
实现此功能使用的方法:
从string最后一个字符往前扫描,直到扫到第一个数字字符。使用string::erase()函数执行删除操作。
代码:
void erasePending(string &str)
{
int index = str.size()-1;
while(index!=-1)
{
if (str[index] < '0' || str[index] > '9' )
{
str.erase(index,1);
index--;
}
else
{
break;
}
}
return ;
}