正则表达式
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:]*$:空白行
\<:单词的词首
\>:单词词尾
\b:既能表示词首,也能表示词尾
\<\>:匹配单词
分组
()
(string1(string2))
\1:string1(string2)
\2:string2
或
a|b a或b
C|cat C或cat
(C|c)at Cat或cat