her regex maçı teker teker alın.pozisyonları
std::regex r("(a)|(b)|(c)");
Ve bu giriş metni:
std::string text("abcab");
Şimdi her döngüde orada döngü maçları Bir maçından tüm oluşumlarını erişebilirler istediğiniz Örneğin
, bu regex var . Yani ilk döngüde 0 konumunda "a" ve 3. pozisyonda "a" alabiliyordum. İkinci döngüde 1'de "b", "4" de "b" olacaktı ve üçüncü döngüde "c" olurdu. "2. pozisyonda bunu nasıl yapabilirim?
Şu anda her regex parçasını ayrı ayrı ((a)
, (b)
ve (c)
için regex) tek tek takip ediyorum. Ama bunların birçoğu var ki ben daha iyi/daha hızlı bir çözüm arıyorum.
http://en.cppreference.com/w/cpp/regex/regex_iterator –
şey (https://ideone.com/QAqBGn)? –
@ WiktorStribiżew Geçerli maçın hangi eşleşme sayısının olduğunu bilmem gerekiyor. –