grep使用简明及正则表达式

1、grep使用简明

使用基本正则表达式定义的模式来过滤文本,并将符合模式的文本行显示出来
grep [options] PATTERN [FILE...]

-i      :忽略大小写
--color  :符合模式的文本行显示颜色
-v      : 显示没有被模式匹配到的行
-o      :只显示被模式匹配到的字符串
-E      : 使用扩展正则表达式(= egrep)

2、基本正则表达式(PATTERN中的元字符匹配)
(1)字符匹配
.  : 匹配任意单个字符
[]  : 匹配指定范围内的任意单个字符
[^] :匹配指定范围外的任意单个字符


[[:digit:]]    :匹配数字 [0-9]
[[:lower:]]  :匹配小写字母 [a-z]
[[:upper:]]  :匹配大写字母 [A-Z]
[[:punct:]]  :匹配特殊字符
[[:space:]]  :匹配空格
[[:alpha:]]  :匹配字母 [a-zA-Z]
[[:alnum:]]  :匹配字母和数字 [0-9a-zA-Z]

(2)次数匹配
*      : 匹配其前面的字符任意次(0次-任意次)
.*      : 任意长度的任意字符
\?      : 匹配其前面的字符1次或0次
\{m,n\} : 匹配其前面的字符至少m次,至多n次
        例如  \{1,\}  :匹配其前面的字符至少1次
              \{0,3\} :匹配其前面的字符0到3次

(3)位置锚定
^      : 锚定行首
$      : 锚定行尾
^$      : 表示空白行

\<或\b    :锚定词首
\>或\b    :锚定词尾

(4)分组及后向引用
\(\)        :分组,将之后需要引用的内容分组囊括起来
\n      : 后向引用,即引用前面第n个括号内包含的所有内容


3、扩展正则表达式(PATTERN中的元字符匹配扩展)
(1)次数匹配
?        : 匹配其前面的字符1次或0次
+        : 匹配其前面的字符至少1次
{m,n}    : 匹配其前面的字符至少m次,至多n次

(2)分组及后向引用
()            :分组,将之后需要引用的内容分组囊括起来
\n      : 后向引用,即引用前面第n个括号内包含的所有内容

(3)或者
|        :匹配左边的字符串或者右边的字符串
        例如  B|boy  : B或boy

相关阅读

Linux下Shell编程——awk编程

Linux下Shell编程——sed命令基本用法

Linux下Shell编程——grep命令的基本运用

Linux下Shell编程——正则表达式基础与扩展

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/11ef6820e06a283891a5d40a98a68108.html