2013-08-15 4 views
0

J'ai une liste d'objets QRegExp qui sont créés dans une partie de l'application et utilisés dans une autre partie. Ils sont créés comme:Comment imprimer un 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); 
} 

et utilisés comme:

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

et à l'endroit où je l'utilise je voudrais voir l'expression « pattern » Je suis en train d'utiliser. ..

Comment imprimer un QRegExp?

Répondre

2

Essayez ceci:

qDebug() << expression.pattern(); 

Renvoie la chaîne de modèle de l'expression régulière. Le modèle a syntaxe d'expression régulière ou syntaxe générique, en fonction de patternSyntax().