joozh 发表于 2018-8-26 13:05:29

Linux shell 正则表达式

  基本组成部分:
  正则表达式的基本组成部分。
  正则表达式
  描述
  示例
  \
  转义符,将特殊字符进行转义,忽略其特殊意义
  a\.b匹配a.b,但不能匹配ajb,.被转义为特殊意义
  ^
  匹配行首,awk中,^则是匹配字符串的开始
  ^tux匹配以tux开头的行
  $
  匹配行尾,awk中,$则是匹配字符串的结尾
  tux$匹配以tux结尾的行
  .
  匹配除换行符\n之外的任意单个字符,awk则中可以
  ab.匹配abc或bad,不可匹配abcd或abde,只能匹配单字符
  [ ]
  匹配包含在[字符]之中的任意一个字符
  coo可以匹配cook或cool
  [^ ]
  匹配[^字符]之外的任意一个字符
  123[^45]不可以匹配1234或1235,1236、1237都可以
  [ - ]
  匹配[]中指定范围内的任意一个字符,要写成递增
  可以匹配1、2或3等其中任意一个数字
  ?
  匹配之前的项1次或者0次
  colou?r可以匹配color或者colour,不能匹配colouur
  +
  匹配之前的项1次或者多次
  sa-6+匹配sa-6、sa-666,不能匹配sa-
  *
  匹配之前的项0次或者多次
  co*l匹配cl、col、cool、coool等
  ()
  匹配表达式,创建一个用于匹配的子串
  ma(tri)?匹配max或maxtrix
  { n }
  匹配之前的项n次,n是可以为0的正整数
  {3}匹配任意一个三位数,可以扩展为
  {n,}
  之前的项至少需要匹配n次
  {2,}匹配任意一个两位数或更多位数
  {n,m}
  指定之前的项至少匹配n次,最多匹配m次,n
页: [1]
查看完整版本: Linux shell 正则表达式