51 lines
2.9 KiB
Markdown
51 lines
2.9 KiB
Markdown
[re.general]
|
||
|
||
# 28 Text processing library [[text]](./#text)
|
||
|
||
## 28.6 Regular expressions library [[re]](re#general)
|
||
|
||
### 28.6.1 General [re.general]
|
||
|
||
[1](#1)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L8998)
|
||
|
||
Subclause [[re]](re "28.6 Regular expressions library") describes components that C++ programs may use to
|
||
perform operations involving regular expression matching and
|
||
searching[.](#1.sentence-1)
|
||
|
||
[2](#2)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L9003)
|
||
|
||
The following subclauses describe a basic regular expression class template and its
|
||
traits that can handle char-like ([[strings.general]](strings.general "27.1 General")) template arguments,
|
||
two specializations of this class template that handle sequences of char and wchar_t,
|
||
a class template that holds the
|
||
result of a regular expression match, a series of algorithms that allow a character
|
||
sequence to be operated upon by a regular expression,
|
||
and two iterator types for
|
||
enumerating regular expression matches, as summarized in Table [117](#tab:re.summary "Table 117: Regular expressions library summary")[.](#2.sentence-1)
|
||
|
||
Table [117](#tab:re.summary) — Regular expressions library summary [[tab:re.summary]](./tab:re.summary)
|
||
|
||
| [ð](#tab:re.summary-row-1) | **Subclause** | **Header** |
|
||
| --- | --- | --- |
|
||
| [ð](#tab:re.summary-row-2)<br>[[re.req]](re.req "28.6.2 Requirements") | Requirements | |
|
||
| [ð](#tab:re.summary-row-3)<br>[[re.const]](re.const "28.6.4 Namespace std::regex_constants") | Constants | <regex> |
|
||
| [ð](#tab:re.summary-row-4)<br>[[re.badexp]](re.badexp "28.6.5 Class regex_error") | Exception type | |
|
||
| [ð](#tab:re.summary-row-5)<br>[[re.traits]](re.traits "28.6.6 Class template regex_traits") | Traits | |
|
||
| [ð](#tab:re.summary-row-6)<br>[[re.regex]](re.regex "28.6.7 Class template basic_regex") | Regular expression template | |
|
||
| [ð](#tab:re.summary-row-7)<br>[[re.submatch]](re.submatch "28.6.8 Class template sub_match") | Submatches | |
|
||
| [ð](#tab:re.summary-row-8)<br>[[re.results]](re.results "28.6.9 Class template match_results") | Match results | |
|
||
| [ð](#tab:re.summary-row-9)<br>[[re.alg]](re.alg "28.6.10 Regular expression algorithms") | Algorithms | |
|
||
| [ð](#tab:re.summary-row-10)<br>[[re.iter]](re.iter "28.6.11 Regular expression iterators") | Iterators | |
|
||
| [ð](#tab:re.summary-row-11)<br>[[re.grammar]](re.grammar "28.6.12 Modified ECMAScript regular expression grammar") | Grammar | |
|
||
|
||
[3](#3)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L9026)
|
||
|
||
The ECMAScript Language Specification described in Standard Ecma-262
|
||
is called [*ECMA-262*](#def:ECMA-262 "28.6.1 General [re.general]") in this Clause[.](#3.sentence-1)
|