std:: basic_regex constants
std::basic_regex define varias constantes que gobiernan la sintaxis general de coincidencia de expresiones regulares.
Estas constantes están duplicadas de std :: regex_constants :
| Opción de gramática | Efecto(s) |
ECMAScript
|
Utiliza la gramática de expresiones regulares ECMAScript modificada . |
basic
|
Utiliza la gramática básica de expresiones regulares POSIX ( documentación de gramática ). |
extended
|
Utiliza la gramática extendida de expresiones regulares POSIX ( documentación de gramática ). |
awk
|
Utiliza la gramática de expresiones regulares empleada por la utilidad awk en POSIX ( documentación de gramática ). |
grep
|
Utiliza la gramática de expresiones regulares empleada por la utilidad
grep
en POSIX. Esto es efectivamente igual que la opción
basic
con la adición del carácter de nueva línea
'
\n
'
como separador de alternancia.
|
egrep
|
Utiliza la gramática de expresiones regulares empleada por la utilidad
grep
con la opción
-E
en POSIX. Esto es efectivamente igual que la opción
extended
con la adición del carácter de nueva línea
'
\n
'
como separador de alternancia además de
'|'
.
|
| Variación de gramática | Efecto(s) |
icase
|
La coincidencia de caracteres debe realizarse sin distinguir entre mayúsculas y minúsculas. |
nosubs
|
Al realizar coincidencias, todas las subexpresiones marcadas
(
expr
)
se tratan como subexpresiones no marcadoras
(?:
expr
)
. No se almacenan coincidencias en la estructura
std::regex_match
suministrada y
mark_count()
es cero.
|
optimize
|
Indica al motor de expresiones regulares que acelere la coincidencia, con el costo potencial de ralentizar la construcción. Por ejemplo, esto podría significar convertir un AFN en un AFD. |
collate
|
Los rangos de caracteres de la forma "[a-b]" serán sensibles a la configuración regional. |
multiline
(C++17)
|
Especifica que
^
coincidirá con el inicio de una línea y
$
coincidirá con el final de una línea, si se selecciona el motor ECMAScript.
|
Como máximo se puede elegir una opción de gramática entre
ECMAScript
,
basic
,
extended
,
awk
,
grep
,
egrep
. Si no se elige ninguna gramática,
ECMAScript
se asume como seleccionada. Las otras opciones sirven como variaciones, de modo que
std::
regex
(
"meow"
, std
::
regex
::
icase
)
es equivalente a
std::
regex
(
"meow"
, std
::
regex
::
ECMAScript
|
std
::
regex
::
icase
)
.
Véase también
|
(C++11)
|
opciones generales que controlan el comportamiento de regex
(typedef) |