Question

J'ai une expression régulière au format PCRE:    <a\s*href=\"([^<]*)\"([^<]*)\((.*?)\)\">

mais je ne peux pas l'utiliser dans QT, comment puis-je convertissez-le au format QRegexp pour le faire fonctionner en QT.

Merci

Était-ce utile?

La solution

Avez-vous essayé de lire la documentation ? Plus précisément, la section intitulée & Quot; Notes pour les utilisateurs de Perl & Quot; Il semble que cela devrait être assez simple:

QRegExp regex( "<a\\s*href=\\"([^<]*)\\"([^<]*)\\((.*?)\\)\\">", 
    Qt::CaseSensitive, QRegExp:: RegExp2 );

Notez que tout ce que j'ai fait là-bas a été doublé de barres obliques inverses, car C va & "manger &"; un lors de l'interprétation du code. Cependant, j’ai des doutes sur le fait que vous vouliez que les citations soient doublées, ce qui est peut-être plus conforme à ce que vous vouliez:

QRegExp regex( "<a\\s*href=\"([^<]*)\"([^<]*)\\((.*?)\\)\">", 
    Qt::CaseSensitive, QRegExp:: RegExp2 );

Je ne sais pas non plus pourquoi vous essayez de faire correspondre trois guillemets dans l'expression, mais cela dépasse le cadre de ce que vous avez demandé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top