Namensräume
Varianten
Aktionen

std::match_results<BidirIt,Alloc>::operator[]

Von cppreference.com
< cpp‎ | regex‎ | match results
 
 
 
Bibliothek für reguläre Ausdrücke
Klassen
(C++11)
Algorithmen
Iteratoren
Ausnahmen
Traits
Konstanten
(C++11)
Reguläre Ausdrucksgrammatiken
 
 
const_reference operator[]( size_type n ) const;
(seit C++11)

Wenn n > 0 und n < size(), wird eine Referenz auf das std::sub_match zurückgegeben, das den Teil der Zielsequenz darstellt, der vom n-ten erfassten markierten Unterausdruck abgeglichen wurde.

Wenn n == 0, wird eine Referenz auf das std::sub_match zurückgegeben, das den Teil der Zielsequenz darstellt, der von der gesamten abgeglichenen regulären Expression abgeglichen wurde.

Wenn n >= size(), wird eine Referenz auf ein std::sub_match zurückgegeben, das einen nicht übereinstimmenden Unterausdruck darstellt (ein leeres Teilintervall der Zielsequenz).

ready() muss true sein. Andernfalls ist das Verhalten undefiniert.

Inhalt

[edit] Parameter

n - Ganzzahl, die angibt, welcher Treffer zurückgegeben werden soll

[edit] Rückgabewert

Referenz auf das std::sub_match, das das angegebene übereinstimmende Teilintervall innerhalb der Zielsequenz darstellt.

[edit] Beispiel

#include <iostream>
#include <regex>
#include <string>
 
int main()
{
    std::string target("baaaby");
    std::smatch sm;
 
    std::regex re1("a(a)*b");
    std::regex_search(target, sm, re1);
    std::cout << "entire match: " << sm[0] << '\n'
              << "submatch #1: " << sm[1] << '\n';
 
    std::regex re2("a(a*)b");
    std::regex_search(target, sm, re2);
    std::cout << "entire match: " << sm[0] << '\n'
              << "submatch #1: " << sm[1] << '\n';
}

Ausgabe

entire match: aaab
submatch #1: a
entire match: aaab
submatch #1: aa

[edit] Siehe auch

gibt die Zeichensequenz für den jeweiligen Unter-Treffer zurück
(public member function) [edit]