基础正则表达式
^word 待查找的字符串以word为行首
grep -n "^a" regex.txt 查找首字符为a的行,并输出行号
word$ 待查找的字符串以word为结尾
grep -n "a$" regex.txt 查找以a为结尾的字符的行,并输出行号
grep -n "^$" regex.txt 查找空行,并输出行号
. 代表任意单个字符,包含空格
\ 转义字符* 重复零到无穷个前一个字符
[list] 例如:p[abc]d 则匹配的包括:pad、pbd、pcd
[^list] 与[list]相反,不包括里面的任意一个
[n1-n2] 例如:[0-9] 或者[a-z]或者 [A-Z] 代表范围中的任意一个
grep -n "9[0-9]" regex.txt 匹配的数字为90、91……99
\{n,m\} 前一个字符的n次到m次 例如:a\{3,5\} 匹配包括:aaa 或者aaaa或者aaaaa
grep -n "go\{1,2\}d" regex.txt 匹配的字符串为good god
\{n,\} 前一个字符的至少n次
grep -n "go\{2,\}d" regex.txt 匹配的字符串为good goood gooood...
扩展正则表达式
+ 重复前一个RE字符至少一次
? 0或1次前一个RE字符
| 或者
() 括号内作为一个组
()+ 重复组的
\< \<abc 以abc开头的行
\> abc\> 以abc结尾的行