歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> grep使用簡明及正則表達式

grep使用簡明及正則表達式

日期:2017/3/1 9:54:21   编辑:Linux編程

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

Copyright © Linux教程網 All Rights Reserved