Standards [ edit ] The IEEE POSIX standard has three sets of compliance: BRE (Basic Regular Expressions), [29] ERE (Extended Regular Expressions), and SRE (Simple Regular Expressions). SRE is deprecated , [30] in favor of BRE, as both provide backward compatibility . The subsection below covering the character classes applies to both BRE and ERE. BRE and ERE work together. ERE adds ? , + , and | , and it removes the need to escape the metacharacters ( ) and { } , which are required in BRE. Furthermore, as long as the POSIX standard syntax for regexes is adhered to, there can be, and often is, additional syntax to serve specific (yet POSIX compliant) applications. Although POSIX.2 leaves some implementation specifics undefined, BRE and ERE provide a "standard" which has since been adopted as the default syntax of many tools, where the choi...