grep命令系列:grep中的正则表达式

 grep :是一款文本过滤工具 。其作用:根据用户指定的“模式”对目标文本进行逐个的匹配检查。

 正则表达式 REGEXP:有一类特殊字符及文本字符所编写的模式,其中有些字符不表示字面的意义,而表示控制或通配的功能。

   正则表达式分为两种:

        基本正则表达式:BRE

        扩展正则表达式:ERE

 grep 工具支持正则表达式,egrep 支持扩展正则表达式,并且grep为-E的选项其实就是正则表达式。

 而这里我简单的介绍一下基本正则表达式的语法:

       字符匹配:

                       . : 匹配单个任意字符

                      [] :   表示匹配中括号里面的任意单个字符

                    [^] :   表示匹配中括号指定以外的任意单个字符

     还有一下中括号几种用法:

          [[:alnum: ]]:  表示所有的数字和字母

          [[:alpha:]]  :  表示所有的字母 (不分大小写)

          [[:lower:]]  :  表示所有的小写字母

          [[:digit: ]]  :   表示所有的数字

         [[:space:]] : 表示空格字符

         [[:upper:]] :   表示所有的大写字母

    次数匹配:

                     * :  表示前面字符任意次数

                    \+ :    表示匹配前面字符至少1次

                    \?  :    表示匹配前面字符0到1次

             \{n,m\} :    表示匹配前面字符n 到m 次

             \{n\}    :      表示匹配前面字符m 次

            \ {n,\}   :      表示匹配前面字符至多n次

           \ {0,m\} :      表示匹配前面字符至少m次

     锚定字符:

                   ^ :    表示行首锚定

                   $:   表示行尾锚定

              ^.*$  :    表示行首 行尾锚定 一整行

     ^[:space:]$ :    表示空行 ,包括空格的行

        \< 或\b   :     表示 词首锚定 

        \ > 或\b  :      表示 词尾锚定

  以上为不分正则表达式的简单的语法。

原创文章,作者:huchaowei,如若转载,请注明出处:http://www.178linux.com/72979

(0)
huchaoweihuchaowei
上一篇 2017-04-10
下一篇 2017-04-10

相关推荐

  • N22-妙手-第八周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。     网桥:         一种网络设备,负责网络桥接,将网络的多个网段在数据链路层连接起来。     集线器: &…

    Linux干货 2016-11-07
  • 用户及相关权限命令

    2018-03-26

    2018-03-26
  • 脚本又见脚本,作业又是作业_第七周

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@centos ~]# fdisk -l &n…

    Linux干货 2016-12-30
  • Linux程序包管理(rpm、yum、make)

    linux系统程序安装的方法有rpm yum 以及make手动编译3种方法: rpm这个机制最早由Redhat公司开发出来,后来由于实在好用,所以被很多发行版所使用作为软件安装的管理方式。不过由于使用RPM安装软件时有时会涉及到文件的依赖信,此时需要手动去逐个安装被依赖的包操作起来十分复杂,于是yum这种线上升级的机制便出现了,它会自己主动解决各文件的依赖关…

    Linux干货 2017-10-02
  • 查找find命令简介

       之前都是写一些关于课后练习题的博客,既练习了课后习题也把博客写了,舒服!不过这周学的知识需要练习的不多,更多的是需要了解和记忆,所以给大家介绍一个自我觉得挺强大的一个命令,那就是查找find命令。大家都知道计算机的数据茫茫多,要想找到自己想要的级必须加点限制性的条件来缩小一下范围,或者准确的告诉计算机你想要的是什么。那么怎么来实现呢…

    2017-08-12
  • nfs 安装及基于 nfs 安装部署 mysql 与 httpd

    nfs安装及基于nfs安装部署mysql以及httpd.pdf

    Linux干货 2016-11-07