1、grep
grep [options] PATTERN [FILE...]
-o:仅显示被模式匹配到的字符串
-E:使用扩展怎着表达式
-- colour==auto
基本正则表达式元素符:
1、字符匹配
. :匹配任意单个字符
[]:匹配指定范围内的任意单个字符
[^]:匹配指定范围外的任意单个字符
[:lower:],[:upper:],[:alpha:],[:digit:],[:alnum:],[:punnct:]
2、次数匹配
*:前边字符任意次数
.*:任意单个字符任意多次
\?:前边单个字符0―1次
\+:前边单个字符至少1次
\{m}:前边单个字符m次
\{m,n\}:前边单个字符m到n次
\{m,\}:前边单给字符至少m次
3、锚点匹配
^:匹配模式搜索到的在行首的字符
$:匹配模式搜索到的在行尾的字符
^[[:space:]]$:匹配空行
\<:匹配模式搜索到的在词首的字符
\>:匹配模式搜索到的在词尾的字符
4、分组
\( \):将单个字符或者多个字符捆绑在一起当做整体处理
后向引用:引用前面分组括号所引用的内容
注:分组括号中模式匹配到的内容会被内容会被保存在grep内部的变量中,这些变量的命名方式为:\1,\2,,,,等等。
\1:左起第一个括号到与之相对应的括号完,之间的被模式所搜索到的字符
扩展正则表达式:egrep
grep -E=egrep
1、字符匹配
. :匹配任意单个字符
[]:匹配指定范围内的任意单个字符
[^]:匹配指定范围外的任意单个字符
[:lower:],[:punnct:]
2、次数匹配
*:前边字符任意次数
.*:任意单个字符任意多次
?:前边单个字符0―1次
+:前边单个字符至少1次
{m}:前边单个字符m次
{m,n}:前边单个字符m到n次
{m,}:前边单给字符至少m次
次数匹配与基本正则表达式的区别是不用转义字符\
3、锚点匹配
^:匹配模式搜索到的在行首的字符
$:匹配模式搜索到的在行尾的字符
^[[:space:]]$:匹配空行
\<:匹配模式搜索到的在词首的字符
\>:匹配模式搜索到的在词尾的字符
4、分组
( ):将单个字符或者多个字符捆绑在一起当做整体处理
后向引用:引用前面分组括号所引用的内容
5、或者
a|b
eg:C|cat 匹配左边或右边
(C|c)at:匹配Cat或者cat
fgrep:不支持正则表达式,按给的的字符来匹配