Qt只QStringList的简单使用方法
QStringList類提供了一個字符串列表
從QList <QString>繼承而來,它提供快速索引為基礎的接入以及快速插入和清除
其成員函數用于操作這個字符串列表如
append(),insert(), replace(), removeAll(), removeAt(), removeFirst(), removeLast(), and removeOne()等
1.?? 增加字符串
?? 可以通過append(),或使用<<,如
?? QStringList fonts;
?? fonts << "Arial" << "Helvetica" << "Times" << "Courier";
???????????// fonts:[ "Arial" ,"Helvetica", "Times" , "Courier"]
2.??? 合并字符串使用join( )
QString str = fonts.join(",");
????????? // str == "Arial,Helvetica,Times,Courier"
3.?? 拆分字符串
???????? QString str = " Arial,Helvetica, ,Times,Courier ";
??????? QStringList list1 = str.split(",");
????????// list1: [ " Arial ", " Helvetica ",” “, " Times ", " Courier " ]
?????? QStringList list2 = str.split(",", QString::SkipEmptyParts);
???????// list2: [ " Arial ", " Helvetica ", " Times ", " Courier " ]
???? 也就是說如果有QString::SkipEmptyParts,空項不會出現在結果。默認情況下,空項被保留
4.?? 索引
?????? IndexOf()函數返回給定字符串的第一個出現的索引。
?????? 而lastIndexOf()函數,返回字符串的最后一次出現的索引。
5.??? 替換replaceInStrings()
QStringList files;
??????? files << "$QTDIR/src/moc/moc.y"
???????????????? << "$QTDIR/src/moc/moc.l"
????????????????? << "$QTDIR/include/qconfig.h";
??????????? files.replaceInStrings("$QTDIR", "/usr/lib/qt");
??????????????????// files: [ "/usr/lib/qt/src/moc/moc.y", ...]
6.???? 過濾filter()
可以讓你提取一個新的列表只包含這些字符串包含一個特定的字符串(或匹配特定正則表達式):
?????????? QStringList list;
?????????? list << "Bill Murray" << "John Doe" << "Bill Clinton";
?? QStringList result;
????????? result = list.filter("Bill");
????????? // result: ["Bill Murray", "Bill Clinton"]
總結
以上是生活随笔為你收集整理的Qt只QStringList的简单使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt 的QString类的使用
- 下一篇: ST17H26 SDK中宏定义注意事项