std:: basic_regex constants
std::basic_regex définit plusieurs constantes qui régissent la syntaxe générale de correspondance des expressions régulières.
Ces constantes sont dupliquées depuis std :: regex_constants :
| Option de grammaire | Effet(s) |
ECMAScript
|
Utilise la grammaire d'expressions régulières ECMAScript modifiée . |
basic
|
Utilise la grammaire d'expressions régulières POSIX de base ( documentation de la grammaire ). |
extended
|
Utilise la grammaire d'expressions régulières POSIX étendue ( documentation de la grammaire ). |
awk
|
Utilise la grammaire d'expressions régulières employée par l'utilitaire awk dans POSIX ( documentation de la grammaire ). |
grep
|
Utilise la grammaire d'expressions régulières employée par l'utilitaire
grep
dans POSIX. Cela équivaut effectivement à l'option
basic
avec l'ajout du saut de ligne
'
\n
'
comme séparateur d'alternative.
|
egrep
|
Utilise la grammaire d'expressions régulières employée par l'utilitaire
grep
avec l'option
-E
dans POSIX. Cela équivaut effectivement à l'option
extended
avec l'ajout du saut de ligne
'
\n
'
comme séparateur d'alternative en plus de
'|'
.
|
| Variation de grammaire | Effet(s) |
icase
|
La correspondance des caractères doit être effectuée sans tenir compte de la casse. |
nosubs
|
Lors de l'exécution des correspondances, toutes les sous-expressions marquées
(
expr
)
sont traitées comme des sous-expressions non marquantes
(?:
expr
)
. Aucune correspondance n'est stockée dans la structure
std::regex_match
fournie et
mark_count()
est zéro.
|
optimize
|
Demande au moteur d'expressions régulières d'optimiser la vitesse de correspondance, au prix potentiel d'un temps de construction plus long. Par exemple, cela peut impliquer la conversion d'un AFN en AFD. |
collate
|
Les plages de caractères de la forme "[a-b]" seront sensibles à la locale. |
multiline
(C++17)
|
Spécifie que
^
doit correspondre au début d'une ligne et
$
doit correspondre à la fin d'une ligne, si le moteur ECMAScript est sélectionné.
|
Au plus une option de grammaire peut être choisie parmi
ECMAScript
,
basic
,
extended
,
awk
,
grep
,
egrep
. Si aucune grammaire n'est choisie,
ECMAScript
est supposé être sélectionné. Les autres options servent de variantes, de sorte que
std::
regex
(
"meow"
, std
::
regex
::
icase
)
est équivalent à
std::
regex
(
"meow"
, std
::
regex
::
ECMAScript
|
std
::
regex
::
icase
)
.
Voir aussi
|
(C++11)
|
options générales contrôlant le comportement des regex
(typedef) |