Namespaces
Variants

std::regex_constants:: match_flag_type

From cppreference.net
Definiert im Header <regex>
using match_flag_type = /* implementation-defined */ ;
(1) (seit C++11)
constexpr match_flag_type match_default = { } ;

constexpr match_flag_type match_not_bol = /* unspecified */ ;
constexpr match_flag_type match_not_eol = /* unspecified */ ;
constexpr match_flag_type match_not_bow = /* unspecified */ ;
constexpr match_flag_type match_not_eow = /* unspecified */ ;
constexpr match_flag_type match_any = /* unspecified */ ;
constexpr match_flag_type match_not_null = /* unspecified */ ;
constexpr match_flag_type match_continuous = /* unspecified */ ;
constexpr match_flag_type match_prev_avail = /* unspecified */ ;
constexpr match_flag_type format_default = { } ;
constexpr match_flag_type format_sed = /* unspecified */ ;
constexpr match_flag_type format_no_copy = /* unspecified */ ;

constexpr match_flag_type format_first_only = /* unspecified */ ;
(2) (seit C++11)
(inline seit C++17)
1) match_flag_type ist ein BitmaskType , das zusätzliche Optionen für reguläre Ausdrucksübereinstimmungen spezifiziert.

Konstanten

Hinweis: [ first , last ) bezieht sich auf die zu vergleichende Zeichensequenz.

Name Erklärung
match_not_bol Das erste Zeichen in [ first , last ) wird behandelt, als ob es sich nicht am Anfang einer Zeile befindet
(d.h. ^ wird nicht mit [ first , first ) übereinstimmen).
match_not_eol Das letzte Zeichen in [ first , last ) wird behandelt, als ob es sich nicht am Ende einer Zeile befindet
(d.h. $ wird nicht mit [ last , last ) übereinstimmen).
match_not_bow \b wird nicht mit [ first , first ) übereinstimmen.
match_not_eow \b wird nicht mit [ last , last ) übereinstimmen.
match_any Wenn mehr als eine Übereinstimmung möglich ist, ist jede Übereinstimmung ein akzeptables Ergebnis.
match_not_null Keine leeren Sequenzen übereinstimmen.
match_continuous Nur eine Teilsequenz übereinstimmen, die bei first beginnt.
match_prev_avail -- first ist eine gültige Iteratorposition.
Wenn gesetzt, werden match_not_bol und match_not_bow ignoriert.
format_default Verwendet ECMAScript-Regeln zum Erstellen von Zeichenketten in std::regex_replace ( Syntax-Dokumentation ).
format_sed Verwendet POSIX sed Utility-Regeln in std::regex_replace ( Syntax-Dokumentation ).
format_no_copy Nicht übereinstimmende Zeichenketten nicht in die Ausgabe kopieren in std::regex_replace .
format_first_only Nur die erste Übereinstimmung ersetzen in std::regex_replace .

Alle Konstanten, außer match_default und format_default , sind Bitmaskenelemente. Die match_default und format_default Konstanten sind leere Bitmasken.

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 2053 C++11 1. die Konstanten wurden deklariert static
2. match_default und format_default wurden initialisiert von 0
1. entfernte den static Spezifizierer
2. initialisiert von { }

Siehe auch

versucht, einen regulären Ausdruck auf eine gesamte Zeichensequenz abzubilden
(Funktions-Template)
allgemeine Optionen zur Steuerung des Regex-Verhaltens
(Typdefinition)
(C++11)
beschreibt verschiedene Arten von Matching-Fehlern
(Typdefinition)