Linux下的字串擷取詳解

pythontab發表於2018-05-30

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


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


echo ${var#*//}


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


即刪除 http://


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


 . 


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


echo ${var##*/}


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


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


結果是 123.htm



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


echo ${var%/*}


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


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


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


echo ${var%%/*}


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


結果是:http:


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


echo ${var:0:5}


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


結果是:http:


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


echo ${var:7}


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


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


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


echo ${var:0-7:3}


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


結果是:123


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


echo ${var:0-7}


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


結果是:123.htm



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


相關文章