Qt拆分QString一次

Qt Split QString once

本文关键字:一次 QString 拆分 Qt      更新时间:2023-10-16

我想分割QString,但根据文档,分割函数只允许在出现要分割的字符时进行分割。我想要的是只在角色第一次出现的地方分开。

例如:

默认split()5+6+7将在包含["5","6","7"] 的列表中结束

我想要的:一个只有两个元素的列表->["5","6+7"]

提前感谢您的回答!

有多种方法可以实现这一点,但这可能也是最简单的:

main.cpp

#include <QString>
#include <QDebug>
int main()
{
    QString string("5+6+7");
    qDebug() << string.section('+', 0, 0) << string.section('+', 1);
    return 0;
}

main.pro

TEMPLATE = app
TARGET = main
QT = core
SOURCES += main.cpp

构建并运行

qmake && make && ./main

输出

"5" "6+7"

使用indexOf()查找第一个出现的"&";。然后使用中CCD_ 7和CCD_;R Sahu";