字串切片操作
shell字串切片操作與資料組元素字元切片操作基本相同,在shell中處理字串要注意以下幾點:
1. shell中的字串處理操作與python的處理機制很相似,python中的切片操作支援步長切片和逆序顯示。
2. 漢字佔乙個字元
2. 字串切片操作同樣基於索引機制
3. 索引編號:從左到右元素字串起始偏移量編號為0;從右到從元素字串起始偏移量編號為-1
4. 查詢字串長度 $
切片語法:$、 $
同樣先解釋一下offset、number引數
offset:指定擷取字串的起始位置偏移量
number:指定擷取元素字串的長度或結束位置
1. offset:正數時代表從左向右擷取,為負數時代表從右向左擷取。
2. number:為正數時代表擷取長度,為負數則代表結束位置,當number為代表結束位置時擷取內容不包括第m位
基於模式擷取子字串
#自左向右
$:# 號自左向右,查詢var變數所儲存的字串中,將第一次出現的匹配word的字串刪除。*可以理解為匹配任意長度任意字元
$:## 開啟貪婪模式,自左向右依次匹配,將並所有匹配的字串都刪除,留下未匹配的部分。
%自右向左
$:%號自右向左,查詢var變數所儲存的字串中,將第一次出現的匹配word的字串刪除。*可以理解為匹配任意長度任意字元
$:%%開啟貪婪模式,自右向左依次匹配,將並所有匹配的字串都刪除,留下未匹配的部分。
基於模式匹配查詢替換字元
1. $ 基於模式自左而右匹配變數中儲存的字串,並將第1個匹配到的字串替換為substr。
2. $ 基於模式自左而右匹配變數中儲存的字串,並替換所有匹配到的字串為substr
3. $ 將行首匹配到的字串替換為substr
4. $ 將行尾匹配到的字串替換為substr
基於模式匹配刪除子字串
1. $:刪除var表示的字串中第一次被pattern匹配到的字串
2. $:刪除var表示的字串中所有被pattern匹配到的字串
3. $:刪除var表示的字串中所有以pattern為行首匹配到的 字串
4. $:刪除var所表示的字串中所有以pattern為行尾所匹配 到的字串
字元大小寫轉換
$:把var中的所有小寫字母轉換為大寫
$:把var中的所有大寫字母轉換為小寫
重點記憶
索引編號:從左到右元素字串起始偏移量編號為0;從右到從元素字串起始偏移量編號為-1
offset:正數時代表從左向右擷取,為負數時代表從右向左擷取
number:為正數時代表擷取長度,為負數則代表結束位置,當number為代表結束位置時擷取內容不包括第m位
shell字串處理
一 構造字串 直接構造 str zero hello str first i am a string str second success 重複多次 repeat the first parm 1 by 2 times strrepeat 舉例 str repeat strrepeat user n...
shell 字串處理
一 號擷取,刪除左邊字元,保留右邊字元。echo 其中 var 是變數名,號是運算子,表示從左邊開始刪除第乙個 號及左邊的所有字元 即刪除 http 結果是 www.google.com test.htm 二 號擷取,刪除左邊字元,保留右邊字元。echo 表示從左邊開始刪除最後 最右邊 乙個 號及左...
SHELL字串處理
linux 的字串擷取很有用。有八種方法。假設有變數 var 1.號擷取,刪除左邊字元,保留右邊字元。複製 如下 echo 其中 var 是變數名,號是運算子,表示從左邊開始刪除第乙個 號及左邊的所有字元 即刪除 http 結果是 www.aaa.com 123.htm 2.號擷取,刪除左邊字元,保...