std::match_results<BidirIt,Alloc>::format
| template< class OutputIt > OutputIt format( OutputIt out, |
(1) | (seit C++11) |
| template< class OutputIt, class ST, class SA > OutputIt format( OutputIt out, |
(2) | (seit C++11) |
| template< class ST, class SA > std::basic_string<char_type,ST,SA> |
(3) | (seit C++11) |
| string_type format( const char_type* fmt_s, std::regex_constants::match_flag_type flags = |
(4) | (seit C++11) |
format gibt eine Formatzeichenkette aus, wobei Formatbezeichner oder Escape-Sequenzen in dieser Zeichenkette durch Übereinstimmungsdaten aus *this ersetzt werden.
[fmt_first, fmt_last) definiert. Die resultierende Zeichenfolge wird nach out kopiert.Die Bitmaske flags bestimmt, welche Formatbezeichner und Escape-Sequenzen erkannt werden.
Das Verhalten von format ist undefiniert, wenn ready() != true.
Inhalt |
[bearbeiten] Parameter
| fmt_begin, fmt_end | - | Zeiger auf einen Bereich von Zeichen, der die Formatzeichenfolge definiert |
| fmt | - | std::basic_string, die die Formatzeichenfolge definiert |
| fmt_s | - | Zeiger auf eine nullterminierte Zeichenkette, die die Formatzeichenfolge definiert |
| out | - | Iterator, zu dem die resultierende Zeichenfolge kopiert wird |
| flags | - | std::regex_constants::match_flag_type Bitmaske, die angibt, welche Formatbezeichner und Escape-Sequenzen erkannt werden |
| Typanforderungen | ||
-OutputIt muss die Anforderungen an LegacyOutputIterator erfüllen. | ||
[bearbeiten] Rückgabewert
[edit] Exceptions
Kann implementierungsdefinierte Ausnahmen auslösen.
[bearbeiten] Beispiel
#include <iostream> #include <regex> #include <string> int main() { std::string s = "for a good time, call 867-5309"; std::regex phone_regex("\\d{3}-\\d{4}"); std::smatch phone_match; if (std::regex_search(s, phone_match, phone_regex)) { std::string fmt_s = phone_match.format( "$`" // $` means characters before the match "[$&]" // $& means the matched characters "$'"); // $' means characters following the match std::cout << fmt_s << '\n'; } }
Ausgabe
for a good time, call [867-5309]
[bearbeiten] Siehe auch
| (C++11) |
ersetzt Vorkommen eines regulären Ausdrucks durch formatierten Ersetzungstext (Funktionsvorlage) |
| (C++11) |
Optionen speziell für die Übereinstimmung (Typalias) |