正则表达式(Regular Expressions)
完成条件
Emacs 文本编辑器中的正则表达式
Emacs 使用的正则表达式(regexp)结合了 基本正则表达式(BRE)和扩展正则表达式(ERE) 的特点,同时支持 GNU 扩展。
Emacs 正则表达式的特性
-
反斜杠转义(Backslash Escaping)
- Emacs 混合使用 了 BRE 和 ERE 语法:
- 像 ERE 一样,支持不加反斜杠的
+、? - 像 BRE 一样,支持需要反斜杠的
\(,\)
- 像 ERE 一样,支持不加反斜杠的
- Emacs 混合使用 了 BRE 和 ERE 语法:
\|, \{</code>, <code>\}
GNU 扩展
\w:匹配单词字符(类似[a-zA-Z0-9_])\W:匹配非单词字符\b:匹配单词边界\B:匹配非单词边界\</\>:匹配单词的开头 / 结尾`/':匹配文本缓冲区(buffer)的开始和结束
与 PCRE(Perl-Compatible Regular Expressions)的不同
- 没有
\s(空白字符匹配)- 需要使用
\s-代替
- 需要使用
- 没有
\d(数字匹配)- 需要使用
[0-9]或[:digit:]
- 需要使用
- 不支持前瞻(Lookahead)和后顾(Lookbehind)
语法匹配
- 使用模式特定的语法表 进行匹配:
\sc、\s-、\s等用于特定语法模式匹配
- 按类别匹配
\cc、\cg等匹配不同类别的字符
适用工具
- Emacs 编辑器
最后修改: 2025年01月30日 星期四 02:24