Qt:QString和QStringList

一、QString

Qt则提供了自己的字符串实现:QString,QString也重载的+和+=运算符。
QString常用函数:

函数功能
QString&append(const QString & str)追加子串到字符串尾部。
QString& prepend(const QString & str)将子串加到字符串头部。

bool startsWith(constQString&sQt::Case

Sensitivitycs=Qt::CaseSensitive)

判断字符串(如"abcd")是否以某个子串 (如s是"ab")打头,cs指判断时大小写 const 是否敏感,返回bool 
bool endsWith(const QString & s,Qt::CaseSensitivitvcs=Qt::CaseSensitive)判断字符串(如"abcd")是否以某个子串 
(如s是"cd")结尾,cs 指判断时大小写 
const 是否敏感,返回bool。 
bool contains(const QString & str,Qt::CaseSensitivitycs=Qt::CaseSensitiveconst判断字符串对象里是否包含子串str,参数
cs指判断时大小写是否敏感。
int count(const QString & str,Qt::CaseSensitivitycs=Qt::CaseSensitive)const对字符串对象里子串str出现的次数做统
计,返回出现次数,如果没出现就返回 0.
QString&insert(int positionconst QString,const QString &str)将子串str插入到position序号位置,子串 r插入后的起始序号就是position。
QString& remove(int position,int n)从position开始的位置移除掉n个字符,如
果n比position位置开始的子串长度大,后 
面的就会被全部移除。
QString&remove(const QString & str
strQt::CaseSensitivitycs=Qt::CaseSensitive
这个重载的remove函数将匹配的所有子串
都从字符串里面移除掉,拿来消除空格
 
QString&replace(const QString & beforeconst QString &afterQt::CaseSensitivitycs)这个重载的replace将字符串里出现的所有
子串before全部替换为新的
after=Qt::CaseSensitive)QString trimmed()const '\t', '\n','lv','\f','r'.""剔除字符串头部和尾部的空白字符,包括
字符串中间的空白不 
处理。
QString simplified()const '\t', "\n', 'lv',"\f',"\r',""。剔除字符串里出现的所有空白字符,包括
两端和中间的都剔 
除。

二、QStringList

QStringList类提供了一个字符串列表,从QList<QString>继承而来,它提供快速索引为基础的接入以及快速插入和清除。
QStringList常用函数:
 

函数        功能
QStringList&operator<<(const QString&str)增加字符串
void append(const QString &str)  增加字符串 
QString join(const QString &separator) const合并成为一个字符串,参数为间隔内容
QStringList filter(const QString &str.Qt::CaseSensitivitycs=Qt::CaseSensitive)-const提取一个新的列表只包含这些字符包含一个特定的字符串(或匹配特定正则表达式)



 
 

#include <QCoreApplication>
#include <iostream>
#include <string>
#include <QDebug>
#include <QString>
#include <QStringList>
using namespace std;

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    cout<<"Hello Qt"<<endl;
    qDebug()<<"Hello Qt"<<endl;

    string str = "abcd";
    //cout<<str<<endl;

    QString qstr = "1234";
    //qDebug()<<qstr<<endl;

//    str = qstr.toStdString();
//    cout<<str<<endl;

    qstr = QString::fromStdString(str);
    qDebug()<<qstr<<endl;

//    QStringList qStrLst;
//    qStrLst<<"abcd"<<"1234";
//    qDebug()<<qStrLst<<endl;

//    qStrLst.append("axyz");
//    qDebug()<<qStrLst<<endl;

//    QString qstr = qStrLst.join("");
//    qDebug()<<qstr<<endl;

//    QStringList qLst = qStrLst.filter("a");
//    qDebug()<<qLst<<endl;


//    string str = "4321";

//    QString qstr = QString::fromStdString(str);

//    qDebug() << qstr << endl;
//    qstr.prepend("abc");
//    qDebug() << qstr << endl;
//    qDebug() << qstr.count() << endl;
//    qstr.insert(3,"xyz");
//    qDebug() << qstr << endl;

    QStringList qstrlst;
    qstrlst << "abcd" << "1234" ;

    qstrlst.append("axyz");
    qDebug() << qstrlst << endl;

     qDebug() << qstrlst.join("") << endl;
     QStringList qstr = qstrlst.filter("a");
     qDebug() << qstr << endl;
    return a.exec();
}



















 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值