我想获取搜索的所有“INDICES”。显然“QStringList::indexOf”一次返回一个索引……所以我必须做一个 while 循环。但它也“只”进行精确匹配。
如果我想返回所有包含“husky”的项的索引怎么办...然后可能是“dog”...然后是“dog 2”。 我是否坚持使用“QString::contains”然后循环来完成此操作?还是我缺少更多与“QStringList 类”相关的方式
QStringList dogPound;
dogPound << "husky dog 1"
<< "husky dog 2"
<< "husky dog 2 spotted"
<< "lab dog 2 spotted";
最佳答案
您可以使用QStringList::filter
方法。它返回一个新的 QStringList
,其中包含从过滤器传递的所有项目。
QStringList dogPound;
dogPound << "husky dog 1"
<< "husky dog 2"
<< "husky dog 2 spotted"
<< "lab dog 2 spotted";
QStringList spotted = dogPound.filter("spotted");
// spotted now contains "husky dog 2 spotted" and "lab dog 2 spotted"
关于c++ - 在 QStringList 中搜索特定项目,然后搜索可能包含项目的其他项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18082888/