Bonjour,

j'ai quelques petits problèmes avec les expressions régulières et boost.
J'ai suivi pas à pas, ce beau tutoriel qui tourne parfaitement.
Après j'ai commencé à vouloir écrire quelques petites expressions régulières, et c'est la que les ennuis ont commencé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
std::string regexsimple = "([0-9]*)((;)([0-9]*))*";   
 check("set Regex", regex, val, regex.SetRegex(regexsimple));  
 check("Match Regex", regex, val, regex.Match("1;10;20;21;23;25", val) );
Et c'est le drame, j'obtiens en console:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
        set Regex : OK
        Match Regex : OK
        Array[0] = 1;10;20;21;23;25
        Array[1] = 1
        Array[2] = ;25
        Array[3] = ;
        Array[4] = 25
mon problème c'est que j'aimerai avoir bien sur en retour mes chiffres, bien séparés les uns des autres.
j'ai l'impression qu'avec le caractère *, il ne match que la dernière sous chaine trouvée.

merci de votre aide.