QCollator + std::sort()可对任何数组排序, 以下以QStringList为例:
QStringList list = findChild<QPlainTextEdit *>("plainTextEdit")->toPlainText().split('\n');
QCollator collator;
collator.setNumericMode(true); // 启用数字模式
collator.setCaseSensitivity(Qt::CaseInsensitive); // 设置大小写不敏感
std::sort(list.begin(), list.end(), collator); // 使用 std::sort 函数
findChild<QPlainTextEdit *>("plainTextEdit")->setPlainText(list.join('\n'));