正则表达式¶
正则表达式:
BRE | ERE | Description |
---|---|---|
\ . [ ] ^ $ * |
通用元字符 | |
\+ \? \( \) \{ \} \| |
BRE 独有元字符 | |
+ ? ( ) { } | |
ERE 独有元字符 | |
c |
匹配 c (c 不为上述元字符) |
|
\c |
匹配 c (c 为任意字符) |
|
. |
匹配任意字符,包括换行符 | |
^ |
字符串的开头 | |
$ |
字符串的结尾 | |
\< |
单词的开始 | |
\> |
单词的结尾 | |
[abc] |
匹配 abc 中任意一个 | |
[^abc] |
匹配 abc 中没有的 | |
r* |
匹配 0 个或多个 r | |
r\+ |
r+ |
匹配 1 个或多个 r |
r\? |
r? |
匹配 0 个或 1 个 r |
r1\|r2 |
r1|r2 |
匹配一个 r1 或 r2 |
\(r1\|r2\) |
(r1|r2) |
同上,并明确限定范围,成为捕获组 |
替换表达式:
&
表示正则表达式所匹配的内容\n
表示前面第 n 个括号(捕获组)内正则表达式匹配的内容- 对于 Perl,使用
perl -pe '...'
替换字符串来说,应该使用$&
和$n
(?:...)
仅分组不捕获