Qt实现 字符串去除指定的字符
发布日期:2021-09-25 21:40:43 浏览次数:0 分类:技术文章

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

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

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

封装的接口

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"

上一篇:封装QML常见控件使用方法
下一篇:再读Effective C++ 有感