我有一个保存文件名的QStringList。找到其共同根,即其共同左部分的正确方法是什么?
我正在用C ++编写并使用Qt。
最佳答案
遍历QStringList,比较root和每个字符串:
QString root(QString &a, QString &b)
{
QString str;
for(int i = 0; i < a.length() && i < b.length(); ++i) {
if(a.at(i) == b.at(i))str.push_back(a.at(i));
else break;
}
return str;
}
QString dosth(QStringList &list)
{
QString str;
if(list.isEmpty()) return str;
for(int i = 0; i < list.length(); ++i) {
str = root(str, list.at(i));
}
return str;
}
关于c++ - 如何在字符串列表的所有项目中找到共同的部分?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17616704/