小编anj*_*012的帖子

在 Qt6 中移植 QRegExp::exactMatch()

我正在将 Qt5 应用程序移植到 Qt6。我想尽快摆脱 Qt6 的 Qt5CoreCompat 模块。我的问题是QRegExp类应该用QRegularExpression类替换。大多数补丁都相对简单,但我如何QRegExp::exactMatch()在 Qt6 中移植。以下是应用程序中的一些代码:

QRegExp version(QLatin1String("(.+)_v(\\d+)"));
if (version.exactMatch(completeBaseName/*QString*/))
{
        // some code
}
Run Code Online (Sandbox Code Playgroud)

我看不出有什么办法可以在QRegularExpressionMatch课堂上做到这一点。我想解决方案可能是这样的:

QRegularExpression version(QLatin1String("(.+)_v(\\d+)"));
QRegularExpressionMatch match = version.match(completeBaseName);
if (match.hasMatch())
{
        // Find exact match or not
}
Run Code Online (Sandbox Code Playgroud)

我想要和以前一样的行为。

c++ qt qt6

6
推荐指数
1
解决办法
4924
查看次数

标签 统计

c++ ×1

qt ×1

qt6 ×1