35.9 Emacs 与 POSIX 正则表达式对比

正则表达式语法在不同程序中差异很大。 在编写用于生成供其他程序使用的正则表达式的 Elisp 代码时,了解语法变体之间的区别会很有帮助。 为了体现这种差异,本节讨论 Emacs 正则表达式与 POSIX 标准化的两种语法变体有何不同: 基础正则表达式(BRE)和扩展正则表达式(ERE)。 普通的 grep 使用 BRE,‘grep -E’ 使用 ERE。

Emacs 正则表达式的语法更接近 ERE 而非 BRE,并带有一些扩展。 下面总结 POSIX BRE、ERE 与 Emacs 正则表达式的区别。