Linux正则表达式

1 基本正则表达式
(1)    ^string    表示以string开头的内容
(2)    string$    表示以string结尾的内容
(3)    ^$        表示空行
(4)    .        “.”表示任意单个字符
        注意:Linux系统下点可表示当前目录,也可加载文件!
(5)    \        转义字符,将特殊字符转义为普通字符
         eg: "\^string"表示普通字符串为"^string",即将\后的^转义为普通字符,而不是表示以string开头的字符串
(6)    *        重复0个或多个*号前面的字符
(7)    .*        匹配所有的字符
         eg: ^.*表示以任意0个或多个字符开头
(8)    [abcd]    匹配[]中的任意单个字符
(9)    [^abcd]    排除包含a或b或c或d的内容
(10)    {n,m}    重复前一个字符n到m次
           {n,}    重复前一个字符至少n次,即n次以上
           {,m}    重复前一个字符最多m次,即小于m次
           注意:grep时需要对{}符号进行转义,即编码方式为\{\},但使用egrep时,无需转义


grep命令+参数语义
-v        排除匹配的内容
-E        支持扩展正则表达式
-o        仅输出匹配的内容
-i        忽略大小写
-n        在行首显示行号
--color=auto 匹配的内容加亮显示

sed命令+参数语义
-s        表示替换
-g        表示全局
-i        修改文件
-n        取消默认输出
-p        打印内容

2 扩展正则表达式
命令:egrep 或 grep -E
(1) +    重复1个或多个+号前面的字符
(2) ?    重复0个或1个?号前面的字符
(3) |    用或的方式查找多个字符串
(4) ()    查找”用户组“字符串