Qt中的正则表达式不匹配它应该

时间:2016-12-12 16:10:01

标签: c++ regex qt

所以我有一个函数,我们称之为getMatch。我写了一个正则表达式来匹配它收到的字符串,但Qt正则表达式引擎不像我期望的那样匹配它。

为了示范,这里有一些代码:

bool getMatch()
{
    QString item = "BitwiseAND(Value, Mask)";
    QRegExp rx("\\w+\\([\\w+,\\s]+?\\)", Qt::CaseInsensitive);

    return rx.exactMatch(item);
}

每次都应返回true,但返回false。

我已经在在线测试人员中测试了正则表达式,它应该没问题。

1 个答案:

答案 0 :(得分:2)

我认为你想要的是is this

\\w+\\((\\w+(?:,\\s)?)+\\)

你的正则表达式使用的是[而不是(,但这是一个字符类,而你正在做的只是分组和量化