zoukankan      html  css  js  c++  java
  • linux---正则表达式

    三.    正则表达式基本语法描述:

        Linux Shell环境下提供了两种正则表达式规则,一个是基本正则表达式(BRE),另一个是扩展正则表达式(ERE)。
        下面是这两种表达式的语法列表,需要注意的是,如果没有明确指出的Meta字符,其将可同时用于BRE和ERE,否则将尽适用于指定的模式。

    正则元字符 模式含义 用例
    通常用于关闭其后续字符的特殊意义,恢复其原意。 (...),这里的括号仅仅表示括号。
    . 匹配任何单个字符。 a.b,将匹配abb、acb等
    * 匹配它之前的0-n个的单个字符。 a*b,将匹配ab、aab、aaab等。
    ^ 匹配紧接着的正则表达式,在行的起始处。 ^ab,将匹配abc、abd等,但是不匹配cab。
    $ 匹配紧接着的正则表达式,在行的结尾处。 ab$,将匹配ab、cab等,但是不匹配abc。
    [...] 方 括号表达式,匹配其内部任何字符。其中-表示连续字符的范围,^符号置于方括号里第一个字符则有反向的含义,即匹配不在列表内(方括号)的任何字符。如果 想让]和-表示其原意,需要将其放置在方括号的首字符位置,如[]ab]或[-ab],如这两个字符同时存在,则将]放置在首字符位置,-放置在最尾部, 如[]ab-]。 [a-bA-Z0-9!]表示所有的大小写字母,数字和感叹号。[^abc]表示a、b、c之外的所有字符。[Tt]om,可以匹配Tom和tom。
    {n,m} 区间表达式,匹配在它前面的单个字符重复出现的次数区间,{n}表示重复n次;{n,}表示至少重复n次;{n,m}表示重复n到m次。 ab{2}表示abb;ab{2,}表示abb、abbb等。ab{2,4}表示abb、abbb和abbbb。
    (...) 将圆括号之间的模式存储在特殊“保留空间”。最多可以将9个独立的子模式存储在单个模式中。匹配于子模式的文本,可以通过转义序列1到9,被重复使用在相同模式里。 (ab).*1表示ab组合出现两次,两次之间可存在任何数目的任何字符,如abcdab、abab等。
    {n,m}(ERE) 其功能等同于上面的{n,m},只是不再写转义符了。 ab+匹配ab、abbb等,但是不匹配a。
    +(ERE) 和前面的星号相比,+匹配的是前面正则表达式的1-n个实例。  
    ?(ERE) 匹配前面正则表达式的0个或1个。 ab?仅匹配a或ab。
    |(ERE) 匹配于|符号前后的正则表达式。 (ab|cd)匹配ab或cd。
    [:alpha:] 匹配字母字符。 [[:alpha:]!]ab$匹配cab、dab和!ab。
    [:alnum:] 匹配字母和数字字符。 [[:alnum:]]ab$匹配1ab、aab。
    [:blank:] 匹配空格(space)和Tab字符。 [[:alnum:]]ab$匹配1ab、aab。
    [:cntrl:] 匹配控制字符。  
    [:digit:] 匹配数字字符。  
    [:graph:] 匹配非空格字符。  
    [:lower:] 匹配小写字母字符。  
    [:upper:] 匹配大写字母字符。  
    [:punct:] 匹配标点字符。  
    [:space:] 匹配空白(whitespace)字符。  
    [:xdigit:] 匹配十六进制数字。  
    w 匹配任何字母和数字组成的字符,等同于[[:alnum:]_]  
    W 匹配任何非字母和数字组成的字符,等同于[^[:alnum:]_]  
    <> 匹配单词的起始和结尾。 <read匹配readme,me>匹配readme。

        下面的列表给出了Linux Shell中常用的工具或命令分别支持的正则表达式的类型。

      grep sed vi egrep awk
    BRE * * *    
    ERE       * *

     

  • 相关阅读:
    iOS 制作view渐变的效果CAGradientLayer
    iOS应用架构谈 view层的组织和调用方案
    xcode8 iOS10 log太多
    iOS 10 UserNotifications 框架解析
    iOS UITableViewCell 左滑删除时,修改删除按钮背景颜色,默认是红色的
    给self.navigationItem.rightBarButtonItem设置字体颜色
    iPhone屏幕尺寸、分辨率及适配
    iOS 判断输入是否全是空格
    ios 修改UItableviewcell点击时的颜色
    ios 播放语音(文字转语音) 播放音频文件 振动
  • 原文地址:https://www.cnblogs.com/tianzhiyi/p/5311998.html
Copyright © 2011-2022 走看看