QTextCharFormat myFormat;
myFormat.setFontWeight(QFont::Bold);
myFormat.setForeground(Qt::green);
QString pattern="\\bchar\\b";
QRegExp expression(pattern);
int index=text.indexOf(expression);
while(index>=0)
{
int length=expression.matchedLength();
setFormat(index,length,myFormat);
index=text.indexOf(expression,index+length);
}
QString patt="\\bdouble\\b";
QRegExp express(patt);
int inde=text.indexOf(express);
while(inde>=0)
{
int lengt=express.matchedLength();
setFormat(inde,lengt,myFormat);
inde=text.indexOf(express,inde+lengt);
}
写入 for 循环两次,第一次 "\bchar\b";第二次 "\bdouble\b";
写入for循环可以。但是时间复杂度增大了。空间复杂度却没有大的改善,这样子并不是很合理。
定义宏(c语言是 #define xxx)然后把你的那几行代码放到那一样后面就行了。程序内用 xxx 表示这几行代码。