Linux 的字符串截取很有用躬存。有八種方法。
假設(shè)有變量 var=http://www.aaa.com/123.htm.
1. # 號截取孝扛,刪除左邊字符,保留右邊字符幽崩。
復(fù)制代碼代碼如下:
echo ${var#*//}
其中 var 是變量名苦始,# 號是運(yùn)算符,*// 表示從左邊開始刪除第一個(gè) // 號及左邊的所有字符
即刪除 http://
結(jié)果是 :www.aaa.com/123.htm
2. ## 號截取慌申,刪除左邊字符陌选,保留右邊字符。
復(fù)制代碼代碼如下:
echo ${var##*/}
##*/ 表示從左邊開始刪除最后(最右邊)一個(gè) / 號及左邊的所有字符
即刪除 http://www.aaa.com/
結(jié)果是 123.htm
3. %號截取蹄溉,刪除右邊字符咨油,保留左邊字符
復(fù)制代碼代碼如下:
echo ${var%/*}
%/* 表示從右邊開始,刪除第一個(gè) / 號及右邊的字符
結(jié)果是:http://www.aaa.com
4. %% 號截取柒爵,刪除右邊字符役电,保留左邊字符
復(fù)制代碼代碼如下:
echo ${var%%/*}
%%/* 表示從右邊開始,刪除最后(最左邊)一個(gè) / 號及右邊的字符
結(jié)果是:http:
5. 從左邊第幾個(gè)字符開始棉胀,及字符的個(gè)數(shù)
復(fù)制代碼代碼如下:
echo ${var:0:5}
其中的 0 表示左邊第一個(gè)字符開始法瑟,5 表示字符的總個(gè)數(shù)。
結(jié)果是:http:
6. 從左邊第幾個(gè)字符開始唁奢,一直到結(jié)束霎挟。
復(fù)制代碼代碼如下:
echo ${var:7}
其中的 7 表示左邊第8個(gè)字符開始,一直到結(jié)束麻掸。
結(jié)果是 :www.aaa.com/123.htm
7. 從右邊第幾個(gè)字符開始酥夭,及字符的個(gè)數(shù)
復(fù)制代碼代碼如下:
echo ${var:0-7:3}
其中的 0-7 表示右邊算起第七個(gè)字符開始,3 表示字符的個(gè)數(shù)论笔。
結(jié)果是:123
8. 從右邊第幾個(gè)字符開始,一直到結(jié)束千所。
復(fù)制代碼代碼如下:
echo ${var:0-7}
表示從右邊第七個(gè)字符開始狂魔,一直到結(jié)束。
結(jié)果是:123.htm
注:(左邊的第一個(gè)字符是用 0 表示淫痰,右邊的第一個(gè)字符用 0-1 表示)