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

    • 正则表达式:可以过滤可以表达的行。正则表达式需要编辑工具来实现。

    常用字符:

    正则:“^n”                              #带表以什么开头。
    
    正则:“n$”                              #代表以什么结尾。
    
    正则:“^$”                              #代表空格。
    
    正则:“.”                               #.代表左右吻合的任意一个字符如(r.t:root,rwwt)。
    
    正则:“*”                               #*代表0个或多个任意一个字符。也可以用?一个意思0个或一个。
    
    正则:“.*”                              #代表包含左右都有并全部包含的如。(root,rootrsst)
    
    正则:“字母[3]”                      #代表过滤次数。3代表次数。
    
    正则:[^m]                              #非m的字符。
    
    正则:+                                 #匹配+前字符1次或多次

    正则表达式字符

    ^              # 行首定位                                                                     
    
    $              # 行尾定位
    
    .              # 匹配除换行符以外的任意字符
    
    *              # 匹配0或多个重复字符
    
    +              # 重复一次或更多次
    
    ?              # 重复零次或一次
    
    ?              # 结束贪婪因子 .*? 表示最小匹配
    
    []             # 匹配一组中任意一个字符
    
    [^]            # 匹配不在指定组内的字符
    
                  # 用来转义元字符
    
    <              # 词首定位符(支持vi和grep)  <love
    
    >              # 词尾定位符(支持vi和grep)  love>
    
    x{m}         # 重复出现m次
    
    x{m,}        # 重复出现至少m次
    
    x{m,n}       # 重复出现至少m次不超过n次
    
    X?             # 匹配出现零次或一次的大写字母 X
    
    X+             # 匹配一个或多个字母 X
    
    ()             # 括号内的字符为一组
    
    (ab|de)+       # 匹配一连串的(最少一个) abc 或 def;abc 和 def 将匹配
    
    [[:alpha:]]    # 代表所有字母不论大小写
    
    [[:lower:]]    # 表示小写字母 
    
    [[:upper:]]    # 表示大写字母
    
    [[:digit:]]    # 表示数字字符
    
    [[:digit:][:lower:]]    # 表示数字字符加小写字母 

     元字符

     d       # 匹配任意一位数字
    
     D       # 匹配任意单个非数字字符
    
     w       # 匹配任意单个字母数字下划线字符,同义词是 [:alnum:]
    
     W       # 匹配非数字型的字符

     字符类:空白字符

     s       # 匹配任意的空白符
    
     S       # 匹配非空白字符
    
            # 匹配单词的开始或结束
    
     
           # 匹配换行符
    
     
           # 匹配回车符
    
     	       # 匹配制表符
    
            # 匹配退格符
    
     0       # 匹配空值字符

     字符类:锚定字符

             #匹配字边界(不在[]中时)
    
    B         # 匹配非字边界
    
    A        # 匹配字符串开头
    
            # 匹配字符串或行的末尾
    
    z         #只匹配字符串末尾
    
    G        # 匹配前一次m//g离开之处

     捕获

    (exp)                # 匹配exp,并捕获文本到自动命名的组里
    
    (?<name>exp)        # 匹配exp,并捕获文本到名称为name的组里,也可以写(?'name'exp)
    
    (?:exp)              # 匹配exp,不捕获匹配的文本,也不给此分组分配组号

    零宽断言

    (?=exp)              # 匹配exp前面的位置
    (
    ?<=exp) # 匹配exp后面的位置
    (
    ?!exp) # 匹配后面跟的不是exp的位置
    (
    ?<!exp) # 匹配前面不是exp的位置
    (
    ?#comment) # 注释不对正则表达式的处理产生任何影响,用于注释
  • 相关阅读:
    iOS如何获取蓝牙Mac地址
    iOS完整App资源收集
    四月兄弟AprilBeacon
    图片360°旋转动画(
    图片圆角
    获取子字符串在元字符串中出现的所有位置
    调用系统震动 循环震动
    ibecon后台运行
    uiwebview 加载本地js、css、img,html从网站加载
    获取蓝牙mac地址
  • 原文地址:https://www.cnblogs.com/xiangsikai/p/8284301.html
Copyright © 2011-2022 走看看