| Home | Libraries | People | FAQ | More

#### syntax_option_type Synopsis

Type `syntax_option_type` is an implementation specific bitmask type that controls how a regular expression string is to be interpreted. For convenience note that all the constants listed here, are also duplicated within the scope of class template `basic_regex`.

    namespace std{ namespace regex_constants{

    typedef implementation-specific-bitmask-type syntax_option_type;

    // these flags are standardized:
    static const syntax_option_type normal;
    static const syntax_option_type ECMAScript = normal;
    static const syntax_option_type JavaScript = normal;
    static const syntax_option_type JScript = normal;
    static const syntax_option_type perl = normal;
    static const syntax_option_type basic;
    static const syntax_option_type sed = basic;
    static const syntax_option_type extended;
    static const syntax_option_type awk;
    static const syntax_option_type grep;
    static const syntax_option_type egrep;
    static const syntax_option_type icase;
    static const syntax_option_type nosubs;
    static const syntax_option_type optimize;
    static const syntax_option_type collate;

    //
    // The remaining options are specific to Boost.Regex:
    //

    // Options common to both Perl and POSIX regular expressions:
    static const syntax_option_type newline_alt;
    static const syntax_option_type no_except;
    static const syntax_option_type  save_subexpression_location;

    // Perl specific options:
    static const syntax_option_type no_mod_m;
    static const syntax_option_type no_mod_s;
    static const syntax_option_type mod_s;
    static const syntax_option_type mod_x;
    static const syntax_option_type no_empty_expressions;

    // POSIX extended specific options:
    static const syntax_option_type no_escape_in_lists;
    static const syntax_option_type no_bk_refs;

    // POSIX basic specific options:
    static const syntax_option_type no_escape_in_lists;
    static const syntax_option_type no_char_classes;
    static const syntax_option_type no_intervals;
    static const syntax_option_type bk_plus_qm;
    static const syntax_option_type bk_vbar;

    } // namespace regex_constants
    } // namespace std