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中的應用程序輸出窗口看到輸出結果了。