1. 程式人生 > >linux shell 變數子串

linux shell 變數子串

linx變數子串
在本例子中,變數  test=https://www.//cnblogs./com//jjmaokk/p/10135401.html
1,${#parameter}
返回變數$parameter內容的長度(按字元),也適用於特殊變數
例:
[[email protected] ~]# echo ${#test}
51
2,${#parameter:offset}
在變數${parameter}中,從位置offset之後開始提取子串到結尾
例:
[[email protected] ~]# echo ${test:5}
://www.//cnblogs./com//jjmaokk/p/10135401.html

3,${
#parameter:offset:length} 在變數${parameter}中,從位置offset之後開始提取長度為length的字串 例: [[email protected] ~]# echo ${test:5:10} ://www.//c 4,${parameter#word} 從變數${parameter}開頭開始刪除最短匹配的word子串 5,${parameter##word} 從變數${parameter}開頭開始刪除最長匹配的word子串 此變數test中:從開頭開始,最短匹配為https://,最長匹配為https://www.//cnblogs./com// 結果如下: [[email protected]
~]# echo ${test#*//} www.//cnblogs./com//jjmaokk/p/10135401.html [[email protected] ~]# echo ${test##*//} jjmaokk/p/10135401.html 6,${parameter%word} 7,${parameter%%word} %:從變數${parameter}結尾開始刪除最短匹配的word子串 %%:從變數${parameter}結尾開始刪除最長匹配的word子串 此變數test中:從結尾開始,最短匹配為//jjmaokk/p/10135401.html 最長匹配為//www.//cnblogs./com//jjmaokk/p/10135401.html 結果如下: [
[email protected]
~]# echo ${test%//*} https://www.//cnblogs./com [[email protected] ~]# echo ${test%%//*} https: 8,${parameter/pattern/string} 使用string代替第一個匹配的pattern 例: [[email protected] ~]# echo ${test/t/v} hvtps://www.//cnblogs./com//jjmaokk/p/10135401.html 9,${parameter//pattern/string} 使用string代替第所有匹配的pattern [[email protected] ~]# echo ${test//t/v} hvvps://www.//cnblogs./com//jjmaokk/p/10135401.hvml