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

相关推荐

  • 第十二周作业

      1、描述一次完整的http请求处理过程 简介 一次完整的HTTP请求过程从TCP三次握手建立连接成功后开始,客户端按照指定的格式开始向服务端发送HTTP请求,服务端接收请求后,解析HTTP请求,处理完业务逻辑,最后返回一个HTTP的响应给客户端,HTTP的响应内容同样有标准的格式。无论是什么客户端或者是什么服务端,大家只要按照HTTP的协议标准…

    2017-11-12
  • 计算机基础

    小白入门

    2018-03-08
  • 循环体

    for 变量名in 列表;do 循环体 done 执行机制: 依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中的元素耗尽,循环结束 列表生成方式: (1) 直接给出列表 (2) 整数列表: (a) {start..end} (b) $(seq[start [step]] end) (3) 返回列表的命令  &nbsp…

    Linux干货 2016-08-21
  • Linux文件类型及颜色标示

    在Linux系统中,有多种文件类型,不同的文件类型有不同的颜色。 ls -l 目录,这个命令可以在显示的类容中的第一个位置查看目录里面文件的类型。 Linux下用字符表示的文件类型 -:普通文件 d:目录文件 l:链接文件 b:块设备文件 c:字符设备文件 p:管道文件 同时 白色:表示普通文件 蓝色:表示目录 绿色:表示可执行文件 红色:表示压缩文件 浅蓝…

    Linux干货 2016-10-17
  • 6个变态的C语言Hello World程序

    下面的六个程序片段主要完成这些事情: 输出Hello, World 混乱C语言的源代码 下面的所有程序都可以在GCC下编译通过,只有最后一个需要动用C++的编译器g++才能编程通过。 hello1.c   #define _________ }     #define …

    Linux干货 2015-04-01
  • 自制一个简易linux

    虚拟机添加一块新的硬盘(大小自定义) 在磁盘上创建一个基本分区作为/boot分区(大小200M足够) 再创建一个基本分区作为基本根分区(这里我指定给了5G大小) 然后给分区创建文件系统(注;swap分区要使用mkswap命令) ]# mkdir /mnt/boot 创建挂载点(因为grub只识别/boot目录,所以要创建boot目录) ]# mount /d…

    Linux干货 2016-09-21