前言:經常用的這些擷取方法,記了忘,忘了記,在此記錄一下,以便不時之需;
1.字串擷取
substring(),
slice(),方法可從已有的陣列中返回選定的元素,也可用於字串
substr()(ecmascript未進行標準化,不建議使用)
,
以上三種都接受乙個到兩個引數;
substring(start, stop), slice(start,stop) 兩個方法引數均為開始下標與結束下標,方法均用於提取字串中介於兩個指定下標之間的字元。但是substring兩個引數均為非負整數,slice則可以為負數,具體區別見內容;
substr(start, length)方法可在字串中抽取從 start 下標開始的指定數目的字元。start可為負數
let str =
'abcde'
;str.
substring(2
);//"cde"
str.
slice(2
);//"cde"
str.
substr(2
)//"cde"
均為從index為2的字元擷取到最後;
let str =
'abcdefh'
;str.
substring(2
,4);
//"cd" 從index為2的字元開始(包含index為2的開始字元),擷取到index為4,不包含index為4的結束字元
str.
slice(2
,4);
//"cd" 同substring
str.
substr(2
,4)//"cdef",從index為2的字元開始(包含第三個),擷取四個
上面可以看出,此時subtring()與slice()用法,結果相同
當引數有負數時,二者結果不同,如下
str.slice(2, -4) //'c' 相當於str.slice(2, 3)
-4(倒數第四個字元)轉換成正數為str.length -4 = 3; 即str.slice(2, 3)
str.substring(2, -4) //'ab' 相當於str.substring(0, 2)
substring方法兩個引數均要為非負整數,且如果 start > stop ,那麼該方法在提取子串之前會先交換這兩個引數。-4轉化0,start,stop交換,最終為str.substring(0, 2)
當start>stop時,二者結果不同;
str.slice(2, 1) //''
當start> stop,返回空字串
str.substring(2,1) //'b' 相當於str.substring(1, 2)
start > stop ,交換兩個引數;
shell字串擷取方法總結
字串變數 號 最小限度擷取 號 最大限度擷取 echo server 1.4.1.13424323tar.gz echo 1.4.1.13424323tar.gz 號 最小限度擷取 號 最大限度擷取 從左邊第start個字串開始,擷取len個字元 從左邊第幾個字元開始一直到結束 從右邊第幾個字元開始...
字串擷取方法
string str 123abc456 int i 3 1.取字串的前i個字元str str.substring 0,i or str str.remove i,str.length i 2.去掉字串的前i個字元 str str.remove 0,i or str str.substring i ...
字串擷取的方法
字串擷取的方法 stringof lastindexof substring 例項 string str 123abc456 int i 3 1.取字串的前i個字元 str str.substring 0,i str str.remove i,str.length i 2.去除字串的前i個字元 st...