1. 程式人生 > >linux如何實現對字串的擷取

linux如何實現對字串的擷取

  • 假設有變數 var=http://www.aaa.com/123.htm

    1. # 號擷取,刪除左邊字元,保留右邊字元。

    echo ${var#*//}

    其中 var 是變數名,# 號是運算子,*// 表示從左邊開始刪除第一個 // 號及左邊的所有字元

    即刪除 http://

    結果是 :www.aaa.com/123.htm

    2. ## 號擷取,刪除左邊字元,保留右邊字元。

    echo ${var##*/}

    ##*/ 表示從左邊開始刪除最後(最右邊)一個 / 號及左邊的所有字元

    即刪除 http://www.aaa.com/

    結果是 123.htm

    3. %號擷取,刪除右邊字元,保留左邊字元

    echo ${var%/*}

    %/* 表示從右邊開始,刪除第一個 / 號及右邊的字元

    結果是:http://www.aaa.com

    4. %% 號擷取,刪除右邊字元,保留左邊字元

    echo ${var%%/*}

    %%/* 表示從右邊開始,刪除最後(最左邊)一個 / 號及右邊的字元

    結果是:http:

    5. 從左邊第幾個字元開始,及字元的個數

    echo ${var:0:5}

    其中的 0 表示左邊第一個字元開始,5 表示字元的總個數。

    結果是:http:

    6. 從左邊第幾個字元開始,一直到結束。

    echo ${var:7}

    其中的 7 表示左邊第8個字元開始,一直到結束。

    結果是 :www.aaa.com/123.htm

    7. 從右邊第幾個字元開始,及字元的個數

    echo ${var:0-7:3}

    其中的 0-7 表示右邊算起第七個字元開始,3 表示字元的個數。

    結果是:123

    8. 從右邊第幾個字元開始,一直到結束。

    echo ${var:0-7}

    表示從右邊第七個字元開始,一直到結束。

    結果是:123.htm

    注:(左邊的第一個字元是用 0 表示,右邊的第一個字元用 0-1 表示)

    su226

       su226

      136***[email protected]

       參考地址

    9個月前 (04-23)