20. 正則工具簡介 上

正則 一串有規律的字符串ide

  1. grep
    egrep等效於grep -E
    grep '[word]' filename 列出文件中含有word的行
    20. 正則工具簡介 上
    -c 行數
    -i 不區分大小寫
    -n 顯示行號
    20. 正則工具簡介 上
    -v 取反(非目標行)
    20. 正則工具簡介 上
    -r 對目錄且遍歷全部子目錄和文件
    -An 過濾出符合要求的行以及下面n行
    -Bn 過濾出符合要求的行以及上面n行
    -Cn 過濾出符合要求的行以及上下各n行工具

    grep特殊字符(用在引號裏)
    [0-9] 任一數字
    ^[chars] 以某個字符開頭的行
    [^0-9] 非數字(^在中括號內表示取反)
    [^a-zA-Z] 非字母
    . 任一字符
    * 0個或多個以前的字符(會把星號前那個字符吞掉)
    20. 正則工具簡介 上
    20. 正則工具簡介 上
    20. 正則工具簡介 上
    . 任意數量任意字符(貪婪匹配)
    o{2} 連續兩個o(egrep能夠直接用,grep須要加脫義字符,o{2})
    (ooo){3} 三次三個o
    + 1或多個以前字符(grep脫義)
    ? 0或1個以前字符(grep脫義)
    | 或者(grep脫義)blog

  2. sed(能夠替換指定字符)
    查找並打印
    20. 正則工具簡介 上
    -r 不須要脫義字符(至關於grep的-E)
    sed -n '2,5'p [filename] 列出第2-5行
    sed -n '2,$'p [filename] 列出第2及如下所有行
    sed -n '[keywords]'Ip [filename] p前加I(大寫的i)能夠忽略大小寫
    sed -e [case1] -e [case2] -e [case3] [filename] 多條件(各條件結果有重合時,會重複打印)
    sed -n '1,5'd [filename] 取1-5之外的行
    sed -i '1,5'd [filename] 刪除1-5行(-i 直接對文件操做!)
    sed -i '1,5'p [filename] 增長1-5行(1-5行,每行上覆制一行)
    20. 正則工具簡介 上
    sed 'n,ms/[word1]/[word2]/g' [filename] 替換n-m的word1爲word2
    sed -r 's/([^:]+):(.*):([^:]+)/\3:\2:\1/g' [filename]
    將第一個:前和最後一個:後的部分互換
    20. 正則工具簡介 上
    sed -r 's/([^:]):(.*):([^:])/\3:\2:\1/g' 離冒號最近的一個字符
    20. 正則工具簡介 上
    sed -r 's/([^:]{2}):(.*):([^:]{2})/\3:\2:\1/g' 離冒號最近的兩個字符
    20. 正則工具簡介 上
    sed -r 's/(.*)/[chars]&/' 在每行前加特定字符
    20. 正則工具簡介 上
    20. 正則工具簡介 上
相關文章
相關標籤/搜索