namespace std::regex_constants { using syntax_option_type = T1; inline constexpr syntax_option_type icase = unspecified; inline constexpr syntax_option_type nosubs = unspecified; inline constexpr syntax_option_type optimize = unspecified; inline constexpr syntax_option_type collate = unspecified; inline constexpr syntax_option_type ECMAScript = unspecified; inline constexpr syntax_option_type basic = unspecified; inline constexpr syntax_option_type extended = unspecified; inline constexpr syntax_option_type awk = unspecified; inline constexpr syntax_option_type grep = unspecified; inline constexpr syntax_option_type egrep = unspecified; inline constexpr syntax_option_type multiline = unspecified; }
Тип syntax_option_type определяется реализацией bitmask type. Установка его элементов имеет эффекты, перечисленные в Табл 130. Действительное значение типа syntax_option_type должно иметь максимум один из элементов грамматики ECMAScript, basic, extended, awk, grep, egrep, множество. Если элемент грамматики не установлен, используется грамматика по умолчанию ECMAScript.
Элемент | Эффект (ы), если установлен |
icase | Указывает, что сопоставление регулярных выражений с последовательностью контейнера символов должно выполняться без учета регистра. |
nosubs | Указывает, что никакие подвыражения не должны считаться отмеченными, так что, когда регулярное выражение сопоставляется с последовательностью контейнера символов, совпадения подвыражений не должны сохраняться в предоставленной match_results структуре. |
optimize | Указывает, что обработчик регулярных выражений должен уделять больше внимания скорости сопоставления регулярных выражений и меньше - скорости, с которой создаются объекты регулярных выражений. В противном случае это не оказывает заметного влияния на вывод программы. |
collate | Указывает, что диапазоны символов формы "[a-b]" должны быть чувствительны к языку. |
ECMAScript | Указывает, что грамматика, распознаваемая обработчиком регулярных выражений, должна соответствовать грамматике, используемой ECMAScript в ECMA-262, как изменено в [re.grammar]. |
basic | Указывает, что грамматика, распознаваемая механизмом регулярных выражений, должна быть грамматикой, используемой базовыми регулярными выражениями в POSIX, Базовые определения и заголовки, Раздел 9, Регулярные выражения. |
extended | Указывает, что грамматика, распознаваемая обработчиком регулярных выражений, должна быть грамматикой, используемой расширенными регулярными выражениями в POSIX, Базовые определения и заголовки, Раздел 9, Регулярные выражения. |
awk | Указывает, что грамматика, распознаваемая обработчиком регулярных выражений, должна соответствовать грамматике, используемой утилитой awk в POSIX. |
grep | Указывает, что грамматика, распознаваемая обработчиком регулярных выражений, должна соответствовать грамматике, используемой утилитой grep в POSIX. |
egrep | Указывает, что грамматика, распознаваемая обработчиком регулярных выражений, должна соответствовать грамматике, используемой утилитой grep, если задана опция -E в POSIX. |
multiline | Указывает, что ^ должно соответствовать началу строки и $ должно соответствовать концу строки, если ECMAScript выбран двигатель. |