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 16:01
下一篇 2017-04-10 19:36

相关推荐

  • 4.Linux权限管理与grep命令应用

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。        cp -r /etc/skel /home/tuser1        chmod 700 /home/tuser1  …

    Linux干货 2017-07-23
  • LAMP+NFS实现双web服务负载均衡

        一、实验拓扑          二、系统环境      1、主机A、主机B、主机C:CentOS 6.5        测试PC:         Windows 7 旗舰…

    Linux干货 2015-07-06
  • 学习宣言

    我是喻成,我参加了马帮第22期的linux运维网络班,于2016年8月开始跟随马哥学习linux, 我的学习宣言是:要享受学习的每一刻,我思故我在。

    Linux干货 2016-08-15
  • Linux基础学习总结(六)

    一、完成如下练习 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; vim: cp /etc/rc.sysinit /tmp/rc.sysinitvim/tmp/rc.sysinit:%s@^[[:space:]]\+@#&@g sed: sed “s/…

    Linux干货 2016-10-30
  • bash脚本编程之算术运算和文件查找

    算数运算在每个编程语言里面是最基本的功能,在bash里面也是.相对于其他编程语言来说在bash里面不能直接以变量加上变量的形式来表现;比如我们先声明两个变量num1和num2然后再做运算。 num1=2 num2=3 echo "$num1+$num2" 2+3 这里我们显示的结果直接为2+3只是做了变量的替换,而不是做两个变量…

    Linux干货 2016-12-23
  • LVS-几种负载方式的区别

    LVS的原理很重要,很重要。每一个知识点都要做到熟记与脑,谨记于心,张口就来。 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。 使用集群技术和Linux操作系统实现一个高性能、高可用的服务器. 很好的可伸缩性(Scal…

    Linux干货 2017-05-11