如何打印QRegExp

时间:2013-08-15 09:28:37

标签: qt debugging qregexp

我有一个QRegExp对象列表,它们在应用程序的一个部分中创建,并在其他部分使用。它们的创建方式如下:

struct HighlightingRule
{
    QRegExp pattern;
    // somoe more stuff... 
};

QStringList keywordPatterns;
for(int i=0; i<keywords.size(); i++)
{
    QString t = QString("\\b") + keywords.at(i).toUpper() + QString("\\b");
    keywordPatterns.append(t);
}

foreach (const QString &pattern, keywordPatterns)
{
    rule.pattern = QRegExp(pattern);
    highlightingRules.append(rule);
}

并使用如下:

foreach (const HighlightingRule &rule, highlightingRules) 
{
    QRegExp expression(rule.pattern);
    // do something with it
}

在我使用它的地方,我希望看到我试图使用的表达式的“模式”...

如何打印QRegExp?

1 个答案:

答案 0 :(得分:2)

试试这个:

qDebug() << expression.pattern();
  

返回正则表达式的模式字符串。模式有   正则表达式语法或通配符语法,取决于   patternSyntax()。