0028:Qt常用类 - QString(07,子字符串)

    xiaoxiao2023-11-19  171

    1 开发环境

    在介绍内容之前,先说明一下开发环境,如下图: Qt版本:Qt5.3.2; Qt开发工具:Qt Creater 3.2.1; Qt构建工具:Desktop Qt 5.3 MinGW 32bit; Qt开发平台:Windows 7 64bit。

    2 QString

    今天介绍QString的子字符串部分的功能,之前的内容可以参考以下链接。

    0022:Qt常用类 - QString(01,QString的编码方式和初始化) 0023:Qt常用类 - QString(02,增加) 0024:Qt常用类 - QString(03,删除) 0025:Qt常用类 - QString(04,修改) 0026:Qt常用类 - QString(05,查询) 0027:Qt常用类 - QString(06,遍历)

    下面是子字符串部分的示例代码。

    /* * left(int n) * mid(int position, int n) * right(int n) * split(const QString &sep, SplitBehavior behavior, Qt::CaseSensitivity cs) * split(QChar sep, SplitBehavior behavior, Qt::CaseSensitivity cs) */ //left(int n) //mid(int position, int n) //right(int n) QString str1 = "12345一二三四五"; qDebug("str1.left(5) = %s, str1.mid(4, 2) = %s, str1.right(5) = %s.", qPrintableU8(str1.left(5)), qPrintableU8(str1.mid(4, 2)), qPrintableU8(str1.right(5))); //split(const QString &sep, SplitBehavior behavior, Qt::CaseSensitivity cs) QString str2 = " 1 , 2 , 3 , 4 , 5 ,, 一 , 二 , 三 , 四 , 五 "; QStringList list2 = str2.split(",", QString::SkipEmptyParts); QStringList::const_iterator cit = NULL; int index = 0; for (cit=list2.cbegin(); cit<list2.cend(); cit++) { qDebug("split(QString), list2[%d] = %s.", index++, qPrintableU8(*cit)); } //split(QChar sep, SplitBehavior behavior, Qt::CaseSensitivity cs) list2 = str2.split(QChar(',')); index = 0; for (cit=list2.cbegin(); cit<list2.cend(); cit++) { qDebug("split(QChar), list2[%d] = %s.", index++, qPrintableU8(*cit)); }

    在学习过程中,可以将上述代码放到一个按钮的响应函数中,以调试方式运行,就可以在Qt Creater中的应用程序输出窗口看到输出结果了。

    最新回复(0)