• [^] # Re: RE2 et références arrières.

    Posté par . En réponse à la dépêche Google libère la bibliothèque d'expressions rationnelles RE2. Évalué à 1.

    La variante avec le +, c’est pour empêcher le moteur d’enregistrer des états pour le backtracking ; en gros, c’est "ce que je prend, je le rend jamais" (d’où le nom: opérateur possessif)

    Si tu veux en savoir plus, je te conseille ça: http://oreilly.com/catalog/9781565922570

    En gros, a++a ne fonctionnera jamais, au contraire de a+a. Cas d’utilisation typique: matcher une string C/C++: un machin entre guillemets doubles pouvant contenir des guillemets doubles échappés et des caractères d’échappement échappés (de tête):

    "(\.|[^"\])++"

    Sans le ++, cette expression reconnaît très bien : "hello\" alors qu’on ne le veut pas