| 194 | } |
| 195 | |
| 196 | QString Sys::_extract_version(const QString& x) |
| 197 | { |
| 198 | QRegularExpression versionish_string(QRegularExpression::anchoredPattern("\\d+(?:\\.\\d+)*$")); |
| 199 | #if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) |
| 200 | QStringList list = x.split(QRegularExpression("\\s+"), Qt::SkipEmptyParts); |
| 201 | #else |
| 202 | QStringList list = x.split(QRegularExpression("\\s+"), QString::SkipEmptyParts); |
| 203 | #endif |
| 204 | for (int i = list.size() - 1; i >= 0; --i) { |
| 205 | QString chunk = list[i]; |
| 206 | if (versionish_string.match(chunk).hasMatch()) { |
| 207 | return chunk; |
| 208 | } |
| 209 | } |
| 210 | return QString(); |
| 211 | } |
| 212 | |
| 213 | Sys::DistributionInfo Sys::read_legacy_release() |
| 214 | { |