lovegigi 发表于 2018-8-30 06:19:37

shell中正则表达式元字符

  一.基本正则表达式(BRE)
  '.'    匹配任意单个字符
  '*'   指定*前的字符可以连续重复使用任意次,表示重复次数与通配符中的'*' 意义不同(另贪婪模式即最大化匹配)
  '^'   匹配行首
  '$'   匹配行尾
  '.*'   任意数量的字符
  '\+'任意一个或者多个字符
  '\?'任意零个或者一个字符
  '\'   转义字符
  '[...]' 匹配指定范围内的任意单个字符
  '[^...]' 匹配指定范围外的任意单个字符
  '\(....\)'标记匹配字符,向后引用,例如\(grep\).*\1,匹配2个grep中间带有任意数目的字符
  '\n'重复在\(...\) 内的第n个模式
  x\{m,n\} 区间表达式,匹配x字符出现的次数区间.x\{n\}是指x出现n次,x\{m,\}是指x出现至少m次,
  x\{m,n\}是指至少出现m次,至多出现n次
  '\'锚定词尾
  '&'保存查找串以便在替换串中引用, 例如s/.*/abc&/g 结果 abc........
  二.扩展正则表达式(ERE)
  '()' 分组引用 (ab) 匹配ababab
  '|' 或者
  {m,n} 匹配至少m次,至多n次,不需要加\ 对{ } 进行转义
  + 匹配一次或者多次
  ? 匹配0次或者一次

页: [1]
查看完整版本: shell中正则表达式元字符