Qt实现 字符串去除指定的字符

经常会遇到一种业务场景,就是剔除我们不需要的字符,当然往往会借助正则表达式处理,

不过在某些场合,可能明确知道需要剔除的字符,就可以尝试采用以下的方法,即通过遍历的方式,

这往往适用于数据量不大的情况。

封装的接口

void parseData(QString &str)
{
    char array[]={'n','b','a'}; //需要去除的字符
    int length = sizeof (array)/sizeof (char);
    for(int i=0;i<length;i++)
    {
        QString tmp = QString(array[i]);
        if(str.contains(tmp))
        {
            str=str.replace(tmp,"");
        }
    }
}

遍历时,通过contains接口,判断字符串中是否有需要剔除的字符,然后采用replace接口,将需要剔除的字符替换为空,就可以达到目标。

示例

int main(int argc,char *argv[])
{
    QString str = "abcdefgn";
    qDebug()<<"替换前 str="<<str;
    parseData(str);
    qDebug()<<"替换后 str="<<str;
}

输出

替换前 str= "abcdefgn"

替换后 str= "cdefg"

  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值