QString較少用到的接口

介紹QString較少使用卻頗有用的接口。

0x00 移除行首行尾的空白字符

  空白字符包含:'t', 'n', 'v', 'f', 'r'和' '。
  接口:spa

QString QString::trimmed() const

  示例:code

QString str = "  lots\t of\nwhitespace\r\n ";
str = str.trimmed();
// str == "lots\t of\nwhitespace"

0x01 移除行首行尾空白字符並將每一個內部空白序列替換爲一個空格。

QString str = "  lots\t of\nwhitespace\r\n ";
str = str.simplified();
// str == "lots of whitespace";

0x02 QString轉QStringList

QStringList QString::split(const QString &sep, 
                           QString::SplitBehavior behavior = KeepEmptyParts, 
                           Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QString str = "a,,b,c";

QStringList list1 = str.split(',');
// list1: [ "a", "", "b", "c" ]

QStringList list2 = str.split(',', QString::SkipEmptyParts);
// list2: [ "a", "b", "c" ]

  另外QStringList轉QString可使用如下接口:接口

QString QStringList::join(const QString &separator) const

0x03 截取指定位置內容

void QString::truncate(int position)

  示例:ip

QString str = "Hello world";
str.truncate(5);
// str == "Hello"

0x04 計算字符串的某個字符個數

int QString::count(QChar ch, 
                   Qt::CaseSensitivity cs = Qt::CaseSensitive) const
相關文章
相關標籤/搜索