diff --git a/data/parsetrigrams.cpp b/data/parsetrigrams.cpp --- a/data/parsetrigrams.cpp +++ b/data/parsetrigrams.cpp @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include int main(int argc, char **argv) @@ -50,13 +50,13 @@ QTextStream stream(&fin); stream.setCodec("UTF-8"); - while (!stream.atEnd()) - { + const QRegularExpression rx(QStringLiteral("(.{3})\\s+(.*)")); + QRegularExpressionMatch match; + while (!stream.atEnd()) { QString line = stream.readLine(); - QRegExp rx(QStringLiteral("(.{3})\\s+(.*)")); - int pos = rx.indexIn(line); - if (pos != -1) { - models[fname][line.left(3)] = rx.cap(2).toInt(); + match = rx.match(line); + if (match.hasMatch()) { + models[fname][line.left(3)] = match.capturedRef(2).toInt(); } } }