qt字符串分割split

在qt下,想要将以下字符串进行split分割,
Qstring buf = 47cc47cd47ce47cf47d047d147d247d347d447d5 ,
想得到的最终输出结果是,四个字符一组:
47cc
47cd
47ce
47cf
47d0
47d1
47d2
47d3
47d4
47d5
QStringList list = buf.split(??);

给你两个方法可以达到你想要的效果:
方法一:字符串分割

    QString buf = "47cc47cd47ce47cf47d047d147d247d347d447d5";
    QStringList list = buf.split("47");
    list.removeFirst();    // 移除第一个多余的空串
    for (int i = 0; i < list.size(); i++) {
        list.replace(i, ("47" + list.at(i)));    // 把缺少的47加上
    }

方法二:字符串截取

    QString buf = "47cc47cd47ce47cf47d047d147d247d347d447d5";
    QStringList list;
    for (int i = 0; i < buf.size(); i += 4) {
        list.append(buf.mid(i, 4));        // 截取字符串,参数一:从这个位置开始截取,参数二:截取多少个
    }

如果问题解决,点个采纳吧!

这种并不适用于用分割函数来实现,既然每组四个字符的话,你直接用字符串截取就好了。