【linux之正则表达式】

一、grep

grep家族
grep、egrep、fgrep
Globally search a Regular Expression and Print
根据我们提供的模式进行查找,并且将文件中匹配的行显示出来
模式:pattern,纯字符串或元字符构成的匹配条件

grep工作在贪婪模式下

grep

grep [OPTIONS] PATTERN [FILE...]
--color:将匹配模式的部分以高亮彩色的方式进行显示
-i:忽略大小写进行匹配
-v:反向选择,将没有匹配到的显示出来
-o:只显示匹配到的字符
-E:使用扩展的正则表达式
-A#:(after)显示被条件匹配的行及其后面的#行
-B#:(before)显示被条件匹配的行及其前面的#行
-C#:(context)显示被条件匹配的行及其前后各#行

 

二、正则表达式的元字符

1、基本正则表达式

1.字符或字符串出现次数的匹配
*:其前面的字符出现0次或任意次
\?:其前面的字符出现0次或1次
\{m,n\}:其前面的字符至少出现m次,最多出现n次

2.通配符
.:任意单个字符
[]:指定范围内的任意单个字符
[^]:不包括指定范围内的任意单个字符
[[:space:]]

3.锚定字符
^:行首锚定,凡是跟在^后的必须出现在行首
$:行尾锚定,凡是写在$前面的字符串必须出现在行尾
\<或\b:词首锚定:凡是写在其后的字符串,必须出现在一个词的词首
\>或\b:词尾锚定:凡是写在其前面的字符串,必须出现在一个次的词尾

4.分组符号
\(\):分组

\1:引用第一对括号里内容
\2:引用第二对括号里内容
\3

 

2、扩展的正则表达式 grep -e = egrep

+:前面的字符至少出现一次
|:或者
()分组可以不写转义字符


grep 基本的正则表达式,元字符
egrep 扩展的正则表达式,元字符
fgrep 纯字符串

 

posted @ 2018-02-23 12:12  小火星_Hirsi  阅读(168)  评论(0编辑  收藏  举报