正则表达式常见元字符与特性详解
1. 正则表达式模式概述
在正则表达式中,有一些传统模式容易让人产生混淆,比如“多行模式”和“单行模式”。这两种模式名称看似相关,实则并无直接联系。多行模式主要修改点号( .
)的匹配规则,而单行模式则修改 ^
和 $
的匹配规则。并且,它们对换行符的处理视角不同,多行模式将点号对换行符的处理从“特殊”变为“不特殊”,单行模式则相反,将 ^
和 $
对换行符的处理从“不特殊”变为“特殊”。
还有一种“纯文本”模式,该模式不识别大部分或全部正则表达式元字符。例如,在纯文本模式下, [a - z]+
会被当作字符串 [a - z]+
进行匹配。当纯文本模式可应用于正则表达式的部分内容时,会变得更有意义。像PCRE(以及PHP)和Perl的正则表达式就提供了特殊序列 \Q...\E
,其中的内容除了 \E
本身,所有元字符都会被忽略。
2. 字符表示
2.1 字符简写
许多工具提供元字符来表示某些控制字符,这些字符有时依赖于机器,且难以输入或可视化。以下是一些常见的字符简写及其含义:
| 简写 | 含义 | 通常映射的ASCII字符 | 八进制值 |
| ---- | ---- | ---- | ---- |
| \a
| 警报(如“打印”时响铃) | <BEL&