正则表达式—正则表达式详解

grep使用正则表达式进行匹配时,将大大提高效率和精准性,正则表达式概括分为基本正则表达式和扩展正则表达式。

一、基本正则表达式

  字符匹配元字符

        .         #点号匹配任意单个字符
        []        #区配中括号内的任意单个字符
        [^]        #对中括号内的字符取反,
        [:digit:]     #任意数据,相当于0-9
        [:lower:]     #任意小写字母
        [:upper:]     #任意大写字母
        [:alpha:]     #任意大小写字终
        [:alnum:]     #任意数字或字母
        [:punct:]     #任意标点符号
        [:space:]     #任意空白字符

 区配次数元字符,作用:指定前面字符要出现的次数,只表示次数

         *      #任意次,如.*表示任意字符任意次        
        \?      #0次或1次,
        \+      #至少1次
        \{m\}     #m次
        \{m,n\}     #至少m次,最多n次,\{0,n\}表示最多匹配n次,\{m,\}表示至少匹配m次

 位置锚定

        ^      #锚定行首        
        $      #锚定行尾
        \<或\b    #锚定词首
        \>或\b    #锚定词尾

 分组:将一个或多个字符,作为一个整体,并且被匹配到的字符,可以使用\1,\2进行引用

\(***\)  #***代表字符

二、扩展正则表达式

 扩展正则表达式使用grep -E

 字符匹配元字符

 .
[]
[^]

  次数匹配

 *
 ?
 +
{m}
{m,n}

位置锚定

#跟标准正则式一致

分组及后向引用

()   #分组
\1   #对匹配内容进行引用

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/21097

(0)
N21-沉舟N21-沉舟
上一篇 2016-07-04 11:27
下一篇 2016-07-04 11:28

相关推荐

  • 序列化和反序列化

    序列化和反序列化之基本笔记

    2017-10-29
  • 文件通配符练习

    课后资料补充 * : 通配符,代表任意字符(0到多个)? : 通配符,代表一个字符# : 注释/ : 跳转符号,将特殊字符或通配符还原成一般符号| : 分隔两个管线命令的界定; : 连续性命令的界定~ : 用户的根目录$ : 变量前需要加的变量值! : 逻辑运算中的&q…

    Linux干货 2016-08-08
  • 你收到来自一个来自noob的blog,请注意查收~

                  本人较为懒,部分内容为直接cp,勿怪                 图片借鉴余知乎某位深藏不漏的用户 关于ls命令输出结果的详解:     1 如何知道自己当前…

    2017-09-03
  • tomcat-session server实现

    要求:tomcat cluster将会话保存至memcached中 1、利用nginx反代 2、两台tomcat服务器 3、两台memcache服务器 拓扑:      架构前配置:      1、反代服务器:nginx     &nbsp…

    2017-07-03
  • 磁盘分区管理与文件系统的创建

    磁盘分区管理与文件系统的创建   不光是linux文件系统,所有的大结构,多数据凑到一块的时候,单一的管理是没有能力处理这样庞大规模的存在的。所谓“君王不下县”也就是这个道理。要系统的,规范的管理一个国家,存在着省、市这样的层级结构。linux系统也是这样,将整个系统划分为若干个分区,实现不同功能,不同层级的规范管理,这就是创建磁盘分区的意义。既然…

    Linux干货 2016-09-01
  • Linux文件系统权限详解

    一、综述 在用户和组的管理中介绍了Linux系统是用户多任务的分时操作系统,这意味着同时可以有多人在同一台pc上进行不同的操作。为了能够保护每个用户的数据安全,针对不同的用户设置相应的权限是非常重要的。 Linux文件系统权限主要针对三类用户: 文件的所有者: owner,用u标识 文件的所有组:group,用g标识 其他人: other,用o标识。不包含在…

    Linux干货 2016-08-04