什么是正则表达式
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
基本匹配
在搜索时直接输入想要搜索的字母数字或字符,例如:
1 | $ cat regtest.txt |
元字符
| 元字符 | 描述 |
|---|---|
| . | 句号匹配任意单个字符除了换行符 |
| [] | 字符种类,匹配方括号内的任意字符 |
| [^] | 否定的字符种类,匹配除了方括号里的任意字符 |
| * | 匹配>=0个重复的在*号之前的字符 |
| + | 匹配>=0个重复的在*号之前的字符 |
| ? | 标记之前的字符为可选的 |
| {n,m} | 匹配n至m个大括号之前的字符或者字符集 |
| (abc) | 字符集,匹配与abc一样的字符串 |
| \ | 转义字符,用于匹配一些保留的字符 [ ] ( ) { } . * + ? ^ $ \ | |
| ^ | 从开始行开始匹配 |
| $ | 从末端开始匹配 |
点运算符 .
.是匹配任意单个字符,但不匹配换行符
1 | $ grep -o '.at' regtest.txt |




