13
Si j'ai un motif regex simple comme "ab". et j'ai une chaîne qui a plusieurs correspondances comme "abc abd". Si je fais ce qui suit ...Boost C++ regex - comment obtenir plusieurs correspondances
boost::match_flag_type flags = boost::match_default;
boost::cmatch mcMatch;
boost::regex_search("abc abd", mcMatch, "ab.", flags)
Ensuite mcMatch contient juste le premier résultat "abc". Comment puis-je obtenir toutes les correspondances possibles?
Merci pour la réponse rapide. Question, qu'est-ce que * iter retourne, il ne semble pas être un boost :: cmatch dans mon test rapide? Je viens de donner un exemple très simple. Dans ma regex, je peux avoir des groupes, donc j'ai besoin d'accéder aux informations de groupe pour chaque match (comme c'est disponible sur cmatch)? – Ron
Vous pouvez essayer le regex_iterator à la place, il renvoie un match_result lorsqu'il est déréférencé, et devrait vous donner ce que vous cherchez? – Jacob