如下面的这种文件:

使用如下的代码可以以空格和英文的逗号作为拆分!

如下代码:

#include <QApplication>
#include <QDebug>
#include <QFile>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QFile file("E:\\Qt2018\\RegExpDemo\\test.txt");

    if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){

        qDebug() << "Can't open file!";
        return -1;
    }

    while(!file.atEnd()){

        QStringList list = QString::fromLocal8Bit(file.readLine()).split(QRegExp(",|\\s+"), QString::SkipEmptyParts);
        qDebug() << list;
    }

    file.close();

    return a.exec();
}

程序运行截图如下:

如果要去掉中文的逗号,和中文的这个符号、

则修改正则表达式!

源码如下:

#include <QApplication>
#include <QDebug>
#include <QFile>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QFile file("E:\\Qt2018\\RegExpDemo\\test.txt");

    if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){

        qDebug() << "Can't open file!";
        return -1;
    }

    while(!file.atEnd()){

        QStringList list = QString::fromLocal8Bit(file.readLine()).split(QRegExp(",|,|、|\\s+"), QString::SkipEmptyParts);
        qDebug() << list;
    }

    file.close();

    return a.exec();
}

运行截图如下:

 

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐