C++惯用基本方法
- C++惯用基本方法
- 字符差查找删除
- 连续删除末尾不是数字
- 删除某一位是某个字符
- 删除某一位不是数字
C++惯用基本方法
字符差查找删除
int pos = result.find('.');
std::cout <
result = std::string(result,1,result.length());
std::cout <<"del firstpos point:"<
连续删除末尾不是数字
void erasePending(std::string &str)
{
int index = str.size()-1;
index = index > 0 ? index : 0;
while(index!=-1)
{
if (str[index] < '0' || str[index] > '9' )
{
str.erase(index,1);
index--;
}
else
{
break;
}
}
return ;
}
删除某一位是某个字符
//删除某一位是某个字符
void eraseSomeOne(std::string &str,int pos,char c)
{
if(!str.empty())
{
int index = pos>= str.size()-1 ? str.size()-1 : pos;
index = index > 0 ? index : 0;
if(str[index] == c)
{
str.erase(index,1);
}
}
}
删除某一位不是数字
//删除某一位不是数字
void eraseNotIsDigit(std::string &str,int pos)
{
if(!str.empty())
{
int index = pos>= str.size()-1 ? str.size()-1 : pos;
index = index > 0 ? index : 0;
if(str[index] < '0' || str[index] > '9' )
{
str.erase(index,1);
}
}
}