天天看點

正規表達式Regular Expresssion

正規表達式的基本元素包括普通字元和元字元。元字元是掌握正規表達式的根本。

1、正規表達式元字元集合及其意義
符号 意義
* 0個或多個在*字元之前的那個普通字元
. 比對任意字元
^ 比對行首,或後面字元的非
$ 比對行尾
[] 比對字元集合
\ 轉義符,屏蔽一個元字元的特殊意義
\<\> 精确比對符号
\{n\} 比對前面字元出現n次
\{n,\} 比對前面字元出現至少n次
\{n,m\} 比對前面字元出現n~m次
2、正規表達式的擴充

       awk和perl等linux工具支援正規表達式擴充出來的一些元字元

符号 意義
比對0個或1個在其之前的那個普通字元
+ 比對1個或多個在其之前的那個普通字元
() 表示一個字元集和或用在expr中
| 表示“或”,比對一組可選的字元

注:bash shell本身不支援正規表達式,使用正規表達式的是shell指令和工具,如grep、sed、awk等。但是bash shell可以使用通配符。

常用通配符及意義

符号 意義
比對一個任意字元
* 比對任意位的任意字元
[] 表示一個字元集和或用在expr中
{} 表示一組表達式的集合
^ 取反

3、grep指令族簡介

grep:标準grep指令,支援基本正規表達式。

egrep:擴充grep指令,支援基本和擴充正規表達式。

fgrep:快速grep指令,不支援正規表達式,按照字元串的字面意思進行比對。