跳转至

正则表达式


正则表达式:

BRE ERE Description
\ . [ ] ^ $ * 通用元字符
\+ \? \( \) \{ \} \| BRE 独有元字符
+ ? ( ) { } | ERE 独有元字符
c 匹配 cc 不为上述元字符)
\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
  • (?:...) 仅分组不捕获