grep:
正则表达式
字符匹配
.:匹配任意的一个字符
[]:匹配括号中的某一个字符
[^]:匹配指定范围外的任意单个字符
[:alnum:]:字母和数字
[:alpha:]:任何英文字母,a-z,A-Z
[:lower:]:小写字母
[:upper:]:大写字母
[:blank:]:空白字符(空格和制表符)
[:space:]:水平和垂直的空白字符,范围更广
[:cntrl:]:
[:digit:]:十进制数字
[:xdigit:]:十六进制数字
[:graph:]:可打印的非空白字符
[:print:]:可打印字符
[:punct:]:标点符号
匹配次数
*:前面的字符出现任意次
.*:任意长度的任意字符
?:匹配前面的字符0次或者1次
+:匹配字符至少1次
{n}:匹配前面的字符n次
{m,n}:匹配前面的字符至少m次,至多n次
{,n}:匹配字符至多n次
{n,}:匹配字符至少n次
位置锚定
^ 行首锚定
$ 行尾锚定
^$:空白行
^[:space:]*$:空白行
<:单词的词首
>:单词词尾
:既能表示词首,也能表示词尾
<>:匹配单词
分组
()
(string1(string2))
1:string1(string2)
2:string2
或
a|b a或b
C|cat C或cat
(C|c)at Cat或cat