基本正则列表 | ||
正则符号 | 描述 | 应用示例 |
^ | 匹配行首 | |
$ | 匹配行尾 | |
[] | 集合,匹配集合中的任意单个字符 | 输出包括abc、abd的行,即前两个字符为“ab”,第三个字符只要是c、d中的一个就符合条件: [root@svr5 ~]# egrep 'ab[cd]' brace.txt |
[^] | 对集合取反 | 输出包括“非空格也非小写字母”的其他字符的行,本例中大写字母和 – 符合要求: [root@svr5 ~]# egrep '[^ a-zA-Z]' brace.txt |
. | 匹配任意单个字符 | |
* | 匹配前一个字符任意次数 *不允许单独使用 | |
\{n,m\} | 匹配前一个字符n到m次 | 输出包括abab、ababab、abababab的行,即“ab”连续出现2~4次 [root@svr5 ~]# egrep '(ab){2,4}' brace.txt |
\{n\} | 匹配前一个字符n次 | 输出包括ababab的行,即“ab”连续出现3次: [root@svr5 ~]# egrep '(ab){3}' brace.txt |
\{n,\} | 匹配前一个字符n次以上 | 输出包括ababab、abababab、……的行,即“ab”最少连续出现3次: [root@svr5 ~]# egrep '(ab){3,}' brace.txt |
\(\) | 保留 | |
扩展正则列表 | ||
正则符号 | 描述 | |
+ | 最少匹配一次 | |
? | 最多匹配一次 | |
{n,m} | 匹配n到m次 | |
() | 组合为整体 保留 | |
| | 或者 | |
\b | 单词边界 | 输出包括单词“init”的行,文件中“initialization”不合要求: # egrep '\binit\b' /etc/rc.local 或者 [root@svr5 ~]# egrep '\<init\>' /etc/rc.local |