Freigeben über


basic_regex Class

Bindet einen regulären Ausdruck ein.

template<class Elem,
    class RXtraits = regex_traits<Elem>,
    class basic_regex {
public:
    basic_regex();
    explicit basic_regex(const Elem *ptr,
        flag_type flags = ECMAScript);
    basic_regex(const Elem *ptr, size_type len,
        flag_type flags = ECMAScript);
    basic_regex(const basic_regex& right);
    template<class STtraits, class STalloc>
        explicit basic_regex(const basic_string<Elem, STtraits, STalloc>& str,
            flag_type flags = ECMAScript);
    template<class InIt>
        explicit basic_regex(InIt first, InIt last,
            flag_type flags = ECMAScript);

    basic_regex& operator=(const basic_regex& right);
    basic_regex& operator=(const Elem *ptr);
    template<class STtraits, class STalloc>
        basic_regex& operator=(const basic_string<Elem, STtraits, STalloc>& str);
    basic_regex& assign(const basic_regex& right);
    basic_regex& assign(const Elem *ptr,
        flag_type flags = ECMAScript);
    basic_regex& assign(const Elem *ptr, size_type len,
        flag_type flags = ECMAScript);
    template<class STtraits, class STalloc>
    basic_regex& assign(const basic_string<Elem, STtraits, STalloc>& str,
        flag_type flags = ECMAScript);
    template<class InIt>
        basic_regex& assign(InIt first, InIt last,
            flag_type flags = ECMAScript);

    locale_type imbue(locale_type loc);
    locale_type getloc() const;
    void swap(basic_regex& other) throw();
    unsigned mark_count() const;
    flag_type flags() const;

    typedef Elem value_type;
    typedef regex_constants::syntax_option_type flag_type;
    typedef typename RXtraits::locale_type locale_type;
    static const flag_type icase = regex_constants::icase;
    static const flag_type nosubs = regex_constants::nosubs;
    static const flag_type optimize = regex_constants::optimize;
    static const flag_type collate = regex_constants::collate;
    static const flag_type ECMAScript = regex_constants::ECMAScript;
    static const flag_type basic = regex_constants::basic;
    static const flag_type extended = regex_constants::extended;
    static const flag_type awk = regex_constants::awk;
    static const flag_type grep = regex_constants::grep;
    static const flag_type egrep = regex_constants::egrep;
private:
    RXtraits traits;    // exposition only
    };

Parameter

  • Elem
    Der Typ der Elemente für eine Übereinstimmung.

  • RXtraits
    Merkmalklasse für Elemente.

Hinweise

Die Vorlagenklasse beschreibt ein Objekt, das einen regulären Ausdruck enthält.Objekte dieser Vorlagenklasse können zu Vorlagen und Funktionen regex_match Function, regex_search Functionzusammen mit regex_replace Functiongeeigneten Textzeichenfolgen argumenten übergeben werden, um nach Text zu suchen, der den regulären Ausdruck übereinstimmt.Die Bibliothek TR1 stellt zwei Spezialisierungen der Vorlagenklasse mit Typdefinitionen regex Typedef für Elemente des Typs charund wregex Typedef für Elemente des Typs wchar_t.

Das Vorlagenargument RXtraits beschreibt verschiedene wichtige Eigenschaften der Syntax regulärer Ausdrücke, die die Vorlagenklasse unterstützt.Eine Klasse, die diese Merkmale des regulären Ausdrucks angibt, muss dieselbe externen Schnittstelle wie ein Objekt der Vorlagenklasse regex_traits Classhaben.

Einige Funktionen akzeptieren eine Operanden Sequenz, die einen regulären Ausdruck definiert.Sie können eine solche Operanden unterschiedliche Weise angeben: sequence

ptr -- ein mit Null endendes Anfang der Sequenz (z. B. Wechselstrom-Zeichenfolge, für Elem des Typs char) unter ptr die kein NULL-Zeiger sein darf () endende, an dem das Element der Wert value_type() ist und nicht Teil der Operanden ist sequence

ptr, count -- count eine Sequenz von Elementen, die am ptr starten (die kein NULL-Zeiger sein darf)

str -- Die Reihenfolge basic_string-Objekt vom angegebenen str

first, last -- eine Sequenz von Elementen und first Iteratoren, getrennt durch die lastim Bereich [first, last)

right -- basic_regex das Objekt right

Diese Memberfunktionen akzeptieren zudem ein Argument flags , das verschiedene Optionen für die Interpretation des regulären Ausdrucks zusätzlich zu den Elementen angibt, die vom RXtraits-Typ beschrieben werden.

Anforderungen

Header: <regex>

Namespace: std

Siehe auch

Referenz

<regex>

regex_match Function

regex_search Function

regex_replace Function

regex Typedef

wregex Typedef

regex_traits Class

Weitere Ressourcen

<regex> Member