13
Se ho un semplice modello regolare come "ab." e ho una stringa che ha più corrispondenze come "abc abd". Se faccio la seguente ...Boost C++ regex - come ottenere più corrispondenze
boost::match_flag_type flags = boost::match_default;
boost::cmatch mcMatch;
boost::regex_search("abc abd", mcMatch, "ab.", flags)
Poi mcMatch contiene solo il primo risultato "abc". Come posso ottenere tutte le partite possibili?
Grazie per la rapida risposta. Domanda, cosa ritorna * iter, non sembra essere un boost :: cmatch nel mio test rapido? Ho appena dato un esempio molto semplice. Nella mia espressione regolare posso avere gruppi, quindi ho bisogno di accedere alle informazioni del gruppo per ogni partita (come è disponibile da cmatch)? – Ron
Puoi provare il regex_iterator invece, restituisce un match_result quando è dereferenziato e dovrebbe darti quello che stai cercando? – Jacob