正規表示式基礎

2021-07-04 02:08:56 字數 3397 閱讀 3835

正規表示式使用單個字串來描述/匹配一系列符合某句法規則的字串。在很多文字編輯器裡,正規表示式通常被用來檢索/替換那些符合某個模式的文字。正規表示式的縮寫為regex

基本語法

grep模式匹配命令

1.grep命令用於列印輸出文字中匹配的模式串,它使用正規表示式作為模式匹配的條件。grep支援三種正規表示式引擎,分別用三個引數指定

通過grep命令使用正規表示式之前,掌握它的常用引數,如下:

舉例操作如下:

使用基本正規表示式,bre

2.數量舉例說明如下匹配以『z』開頭以『o』結尾的所有字串,除了換行符

匹配以『z』開頭以『o』結尾,中間包含乙個任意字元的字串

匹配以『z』開頭,以任意多個『o』結尾的字串

3.選擇舉例說明如下

操作結果如下:

4.完整的特殊符號及說明

使用特殊符號的原因,是因為上面的[a-z]不是在所有情況下都管用,與主機當前的語系有關,用[:lower:]不會有此問題

5.排除字元的舉例說明注意:當「^」放到中括號內為排除字元,否則表示行首

使用擴充套件正規表示式,ere

6.數量上,通過grep使用擴充套件正規表示式需要加上-e引數,或使用egrep只匹配『zo』

匹配以『zo』開頭的所有單詞

7.選擇上匹配「www.shiyanlou.com」和「www.google.com」

匹配不包含「baidu」的內容

注意:以上命令的模式表示式中的「.」因為有特殊含義,所以需要轉義

sed流編輯器

1.sed用於過濾和轉換文字的流編輯器,它是乙個非互動式的編輯器

2.sed的命令基本格式

3.sed中的引數詳細列表如下

4.sed執行命令舉例說明再舉乙個例子,是在後面加上作用範圍

其中,-i代表直接修改檔案內容,2s表示在第二行內的替換,1代表指定行內中的第乙個匹配字串

另外乙個例子是以指定的行數和步長數進行匹配

5.常用動作指令詳細列表如下列印指定行

行內替換,將輸入文字中」shiyanlou「全域性替換為」hehe「,並只列印替換的那一行

其中p代表只列印指定行,且不能省略,一般與-n結合使用

6.行間替換,列印顯示指定檔案匹配的行數及內容

awk文字處理語言

1.awk是一種優良的文字處理工具,是最強大的資料處理引擎之一作用如下

awk的目錄

2.awk所有的操作都是基於pattern(模式)——action(動作)對來完成如果沒有pattern則預設匹配輸入的全部文字,如果沒有action則預設列印匹配內容到螢幕

3.awk處理的方式是將文字分割成一些」字段「,然後在對這些字段進行處理,預設以空格作為乙個欄位的分割符

4.awk命令基本格式awk [-f fs] [-v var=value] [-f prog-file | 」program text」] [file…]

其中-f用來指定字段分割符,-v用於預先為程式設定變數,-f用於指定awk命令要執行的程式檔案,不加-f直接將程式語句放在這裡,最後為awk要處理的文字輸入,可以同時輸入多個文字檔案

舉例如下:使用awk將文字內容列印到終端

其中:」{}「中的內容為動作,print為列印,這條命令省略了pattern模式,所以匹配的是全部內容

舉例說明:將test的第三行的每個字段單獨顯示為一行

另外乙個例子:將test的第二行的以點為分段的字段轉換成以空格為分隔

5.awk常用的內建變數

正規表示式 1 正規表示式基礎

1.正規表示式基礎 正規表示式描述了一種字串匹配的模式,即可以使使用者通過一系列普通字元或特殊字元構建能夠明確描述文字字串的匹配模式,可以用來檢查某個字串是否含有某種子字串,將匹配的子字串做替換或者從某個字串中取出符合某個條件的子字串等。1.1 正規表示式的基本結構 乙個正規表示式就是由普通字元 如...

正規表示式基礎

限定符 d 匹配非負整數 正整數 0 0 9 1 9 0 9 匹配正整數 d 0 匹配非正整數 負整數 0 0 9 1 9 0 9 匹配負整數 d 匹配整數 d d 匹配非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 匹配正浮點數 d...

正規表示式基礎

元字元 描述 匹配任何單個字元。例如正規表示式r.t匹配這些字串 rat rut r t,但是不匹配root。匹配行結束符。例如正規表示式weasel 能夠匹配字串 he s a weasel 的末尾,但是不能匹配字串 they are a bunch of weasels.匹配一行的開始。例如正規...