字符串比如 “gg[ServerIPU]abc[192.168.0.0.1:1000]” 需要提取其中的[]内的内容
先看表达式 \[[\w]+\]
例子:
QString str = "gg[ServerIPU]abc[192.168.0.0.1:1000]";
QRegExp exp("\\[[\\w.:]+\\]");
int pos = 0;
QStringList list;
while ((pos = exp.indexIn(str, pos)) != -1) {
pos += exp.matchedLength();
list.append(exp.cap());
}
qDebug() << list;
("[ServerIPU]", "[192.168.0.0.1:1000]")
如果里面还有其他特殊字符比如上例中的.,:,那么要在[\w]中补上,变为[\w.:]
如果是其他形式的括号,替换其中的中括号即可。