Qt 字符串查找
itstr.indexOf("xc")
itstr.indexOf("xc",itstr.indexOf("xc")+2)
itstr.lastIndexOf("xc")
itstr.indexOf(QRegExp("[0-9]+"));
字符串截断
itstr.chop(5);
itstr.left(itstr.indexOf("xc"));
itstr.right(itstr.size() - itstr.indexOf("xc") - 2);
字符串替换
itstr.replace("[name]","xiaoming");
itstr.replace(QRegExp("[0-9]"),"[NUM]");
#include <QApplication>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QString str = "dsadsadsa.adsdada.[name],[id],[name],adas";
for(int i = 0;i < str.size(); i++)
{
cout<<str[i].toLatin1();
}
cout<<endl;
QString::iterator itr = str.begin();
for(;itr!=str.end();itr++)
{
cout<<itr->toLatin1();
}
cout<<endl;
QString key = "[name]";
int pos = str.indexOf(key);
cout<<"pos = "<<pos<<endl;
int pos1 = str.indexOf(key,pos);
cout<<"pos1 = "<<pos1<<endl;
int pos2 = str.indexOf(key,pos1+key.size());
cout<<"pos2 = "<<pos2<<endl;
int pos3 = str.indexOf(key,pos2+key.size());
cout<<"pos3 = "<<pos3<<endl;
return 0;
// return a.exec();
}
xz@xiaqiu:~/study/csdn/day0/winstate/build$ ./testqt
dsadsadsa.adsdada.[name],[id],[name],adas
dsadsadsa.adsdada.[name],[id],[name],adas
pos = 18
pos1 = 18
pos2 = 30
pos3 = -1
xz@xiaqiu:~/study/csdn/day0/winstate/build$
#include <QApplication>
#include <QDebug>
int main(int argc, char *argv[])
{
QString str = "dsadsadsa.adsdada.{[name],[id],[name]},adas";
//str.chop(4);
qDebug()<<str;
//取第一个{括号之前
int bpos = str.indexOf("{");
int epos = str.lastIndexOf("}");
str.left(bpos);
qDebug()<<str.left(bpos);
qDebug()<<str.right(str.size() - epos - 1);
//取括号之间
str.chop(str.size() - epos);
qDebug()<<str;
qDebug()<<str.right(epos - bpos - 1);
QString str2 = "dsadsadsa.adsdada.{[name],[id],[name]},adas";
//字符串替换
str2.replace("[name]","xiaoming");
qDebug()<<str2;
//字符串切割
QString str3 = "[name],[id],[name]";
QStringList list1 = str3.split(",");
for(int i = 0;i < list1.size();i++)
{
qDebug()<<list1[i];
}
return 0;
}
xz@xiaqiu:~/study/csdn/day0/winstate/build$ ./testqt
"dsadsadsa.adsdada.{[name],[id],[name]},adas"
"dsadsadsa.adsdada."
",adas"
"dsadsadsa.adsdada.{[name],[id],[name]"
"[name],[id],[name]"
"dsadsadsa.adsdada.{xiaoming,[id],xiaoming},adas"
"[name]"
"[id]"
"[name]"
xz@xiaqiu:~/study/csdn/day0/winstate/build$