基本正则表达式BRE集合
- 匹配字符
- 匹配次数
- 位置锚定
符号 | 作用 |
---|---|
^ | 用于模式的最左侧,如"^oldbody",匹配以oldbody单词开头的行 |
$ | 用于模式的最右侧,如"oldbody$",匹配以oldbody单词结尾的行 |
^$ | 表示空行 |
. | 匹配任意一个只有一个字符,不能匹配空行 |
\ | 转义字符,让特殊含义的字符先出原形,还原本意,例如. 代表小数点 |
* | 匹配前一个字符(连续出现)0次或1次以上,重复0次代表空,即匹配所有内容 |
.* | 匹配所有内容 |
^.* | 匹配以任意多个字符开头的内容 |
.*$ | 匹配以任意多个字符结尾的内容 |
[abc] | 匹配[]集合内的任意一个字符,a或b或c,可以写[a-c] |
[^abc] | 匹配除了^后面的任意字符,a或b或c,^表示对[adb]取反 |
扩展正则表达式ERE集合
扩展正则必须用grep -E才能生效
符号 | 作用 |
---|---|
+ | 匹配前一个字符1次或多次 |
[:/+] | 匹配括号内的":“或者”/"字符1次或多次 |
? | 匹配前一个字符0次或1次 |
| | 表示或者,同事过滤多个字符串 |
() | 分组过滤,被括起来的内容表示一个整体 |
a{n,m} | 匹配前一个字符最少n次,最多m次 |
a{n,} | 匹配前一个字符最少n次 |
a{n} | 匹配前一个字符正好n次 |
a{,m} | 匹配前一个字符最多m次 |