linux(ubuntu)文本处理工具及正则表达式

grep egrep(文本过滤) fgrep(不支持正则)

格式 grep [选项] 模式 文件

选项:--color 指定颜色

         -v反向匹配,显示不能被模式匹配到的行

         -o:仅匹配被模式匹配到的字符串,而非整行

         -q:静默模式

         -i:不区分大小写

         -E:支持扩展(相当于egrep)

正则表达式

分为基本正则表达式(BRE扩展正则表达式(ERE

元字符:类似通配符,不表示字符本身的意义,用于额外功能性的描述

基本正则表达式的元字符:(出现需要用引号引起来,单引号也可以解释元字符,但不可变量替换)

.:任意单个字符

[]:指定范围内的任意单个字符 

[0-9],[[:digit:]]:匹配数字

[a-z],[[:lower:]]:匹配小写字母

[A-Z],[[:upper:]]:匹配大写字母

所有的字母:[[:alpha:]]  [a-Z]

字母+数字:[[:alnum:]]  [0-Z]

空格:[[:space:]]    简化写法 [ ]

标点符号:[[:punct:]]

[^]: 指定范围外的任意单个字符

次数匹配:用来指定匹配其前面的字符的次数

*:任意次

.*:匹配任意长度的任意字符

\?:前面字符出现0次或者1次的

\+:前面字符至少一次

\{m\}:匹配m次

\{m,n\}:至少m次,至多n次

\{m,\}:至少m次    \{,n}:至多n次

egrep:扩展正则表达式

  例子:egrep ‘[a-z]{1,3}[ ]{2}’  test.txt

位置锚定:用于指定字符出现的位置

       ^:锚定行首   $:锚定行尾  ^$:空白行​​​​​​​

 

猜你喜欢

转载自blog.csdn.net/qlzy_5418/article/details/85270444