grep及正則表達式

grep 根據模式搜索文本,顯示匹配行

    -i 忽略大小寫

    --color=auto 匹配上的以顏色顯示

    -v 反向查找,顯示沒有被匹配上的行

    -o 只顯示被模式匹配到的字符串本身

正則表達式

    元字符    

        . 任意單個字符

        image.png

        [] 指定範圍內的任意單個字符

        image.png

        [^] 指定範圍外的任意單個字符

  

        在bash,*代表任意長度任意字符,?代表任意單個字符;在正則裏, .*代表任意長度任意字符,.代表任意單個字符

    次數匹配

        \? 匹配前面字符次數1次或0次

        image.png

        * 匹配它前面的字符任意次

        image.png

        \{m,n\} 匹配前面字符至少m次,至多n次;\{1,\}至少1次;\{,3\}最多3次

    位置錨定

        ^ 錨定行首,此字符後面匹配的任意字符必須在行首

        image.png

        $ 錨定行尾,此字符前面匹配的任意字符必須在行尾

        image.png

        ^$ 空白行

            統計空行

             grep --color=auto "^$" test5 |wc -l

        \<或\b 其後面的任意字符必須作爲單詞的首部出現

        \>或\b 其前面的任意字符必須作爲單詞的尾部出現

        \<root\> 或 \broot\b 單詞root 

        image.png


擴展正則表達式

egrep或grep -E

    元字符

        .

        []

        [^]

    次數匹配

        * 匹配其前面任意次

        ? 匹配其前面的字符一次或零次

        + 匹配其前面的字符至少一次

        {m,n}

    位置錨定

        ^

        $

        \<或\b

        \>或\b

    | 或者

        支持過濾多個字段

        image.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章