【QT】QSTRING是否相同判断、是否包含某个字符串、字符串截取
一、QString判断2个字符是否相同
QString nameString = QString::fromLocal8Bit("admin");
//判断方法一
if(nameString == QString::fromLocal8Bit("admin")){
qDebug() << "相同";
}
//判断方法二
if(nameString.compare(QString::fromLocal8Bit("admin")) == 0){
qDebug() << "compare相同";
}
二、QString判断是否包含某个字符串
QString urlString = QString("http://baidu/deviceinfo");
if(urlString.contains("deviceinfo",Qt::CaseSensitive)){
qDebug() << "包含了";
}
上面代码中Qt::CaseSensitivity
为枚举类型, 可取值Qt::CaseSensitive
和 Qt::CaseInsensitive
, 表示匹配的灵敏度,
Qt::CaseSensitive
代表区分大小写;Qt::CaseInsensitive
代表不区分大小,可以自行尝试;
QString字符串的截取
QString deviceString = QString("202010103102855125");
QString deviceString1 = deviceString.mid(0,4);
qDebug() << "deviceString1" << deviceString1;
QString deviceString2 = deviceString.mid(4,2);
qDebug() << "deviceString2" << deviceString2;
从QString mid(int position, int n = -1) const方法就可以看出来,第一个参数是截取位置,第二个参数是截取长度,可以自行尝试;