本章内容:
- 定义正则表达式
- 了解基本正则表达式
- 扩展正则表达式
- 创建正则表达式
定义正则表达式
正则表达式是你定义的、Linux工具用来过滤文本的模式模板。正则表达式模式利用通配符来代表数据流中的一个或者多个字符
在Linux中,有两种流行的正则表达式引擎:
POSIX基本正则表达式(BRE)引擎
POSIX扩展正则表达式(ERE)引擎
|符号 | 描述 | 示例 | |
| ------------- |:-------------| :-----| |
| . | 匹配初换行符(\n)之外的任意单个字符 | | |
| ^ |匹配前面字符串开头 | | |
| $ |匹配前面字符串结尾 | | |
| + | 匹配前面字符1个或多个 | | |
|? | 匹配前面字符0个或1个 | | |
|[ ] |匹配中括号之中的任意一个字符 | | |
|[ .-.] |匹配中括号中范围内的任意一个字符 | | |
|[ ^ ] | 匹配[^]之外的任意一个字符 | | |
|{n}或{n,} |匹配花括号前面字符至少n个字符 | | |
|< |边界符,匹配字符串开始 | | |
|> |边界符,匹配字符串结束 | | |
|( ) | 单元或组合:将小括号里面作为一个组合分组:匹配小括号中正则表达式或字符。\n反向引用,n是数字,从1开始编号,表示引用第n个分组匹配的内容 | | |
|\ |转义符,将特殊符号转成原有意义 | || |