把字符串中每个括号的内容取出来:
已知字符串 QString s = "('abc',0.1,3),('nae',5.9,6),('ok',9.7,0)";
如何把其中的每一个括号内容取出来形成列表呢?
void mysplit()
{
QString s = "('abc',0.1,3),('nae',5.9,6),('ok',9.7,0)";
QRegExp rx("\\(([^)]+)\\)");
QStringList list;
int pos = 0;
while ((pos = rx.indexIn(s, pos)) != -1) {
list << rx.cap(1);
pos += rx.matchedLength();
}
foreach(QString t , list)
qDebug()<<t;
//'abc',0.1,3 'nae',5.9,6 'ok',9.7,0
}
文章介绍了如何使用Qt的QRegExp类和QStringList来从给定的QStrings变量中,通过正则表达式`\(([^)]+)\)`匹配并提取每个括号内的内容,将其存储为列表。示例代码展示了匹配过程和输出结果。
6667

被折叠的 条评论
为什么被折叠?



