一、環(huán)境
成都做網(wǎng)站、成都網(wǎng)站設(shè)計介紹好的網(wǎng)站是理念、設(shè)計和技術(shù)的結(jié)合。創(chuàng)新互聯(lián)擁有的網(wǎng)站設(shè)計理念、多方位的設(shè)計風(fēng)格、經(jīng)驗豐富的設(shè)計團隊。提供PC端+手機端網(wǎng)站建設(shè),用營銷思維進行網(wǎng)站設(shè)計、采用先進技術(shù)開源代碼、注重用戶體驗與SEO基礎(chǔ),將技術(shù)與創(chuàng)意整合到網(wǎng)站之中,以契合客戶的方式做到創(chuàng)意性的視覺化效果。ubuntu14.04 x86_64
二、字符串操作
1.獲得字符串長度
類似C語言中的strlen()
${#variable_name}
eg:
$name=zhangsan $echo ${#name} 8 $
expr length variable_name
note: variable_name不能為空
$ expr length $name $ 8
2.字符串提取
類似java中的substring()
${variable_name:start_index:length} 從左到右,從第start_index(0)開始,length長的子串
${variable_name:0-start_pos:length} 從結(jié)尾倒起數(shù)第start_pos開始,length長的子串
eg:
$echo ${name:0:4} zhang $echo ${name:2} #從第二個位置開始,到結(jié)束 angsan $echo ${name:0-4:2} gs $echo ${name:0-4} #從倒數(shù)第4開始,到結(jié)束 gsan $
3.字符串截取
從左到右刪除
${variable_name#*separator} separator是你要分隔的字符,到第一個separator的位置
${variable#pattern} 檢查是否以指定的pattern結(jié)束,如果是,則使用variable的內(nèi)容并從其左側(cè)刪除pattern所能夠匹配到的最短結(jié)果。
pattern:
* 匹配零個或多個字符
? 匹配任意單個字符
[...] 匹配指定字符組中任意單個字符
[!...] 匹配不在字符組中的任意單個字符
類似C語言中的strchr()
eg:
$name=zhangsan-lisi-wangwu-baidi $echo ${name#*-} lisi-wangwu-baidi $ $var=testcase $echo ${var#?e} #從左側(cè)刪除最短的匹配 scase $echo ${var#*s} tcase
${variable_name##*separator} 到最后一個separator的位置
${variable##pattern} 檢查是否以指定的pattern結(jié)束,如果是,則使用variable的內(nèi)容并從其左側(cè)刪除pattern所能夠匹配到的最長結(jié)果(貪吃)。
類似C語言中的rindex()
eg:
$echo ${name##*-} baidi $ $var=testcase $echo ${var##*s} #從左側(cè)刪除最長的匹配 e
從右到左刪除
${variable_name%separator*} ${variable%pattern}
${variable_name%%separator*} ${variable%%pattern}
eg:
$echo ${name%-*} zhangsan-lisi-wangwu $echo ${name%%-*} zhangsan $ $var=testcase $echo ${var%e} #從右側(cè)刪除最短匹配 testcas $echo ${var%s*e} testca
4.字符串拆分
類似C語言的strtok()
${variable_name//ch/ch_replace} 將variable_name中的字符ch替換為ch_replace字符
eg:
$name=zhangsan-lisi-wangwu-baidi $name=${name//-/,} #將橫杠替換為逗號 $echo ${name} zhangsan,lisi,wangwu,baidi $name={name//,/ } #將逗號替換為空格 $echo ${name} zhangsan lisi wangwu baidi #可用于后續(xù)的for循環(huán) $ $var=tescase $echo ${var%%s*e} #從右側(cè)刪除最長匹配 te
IFS 通過設(shè)置IFS的值,進行拆分
eg:
$test=aaa,bbb,ccc,ddd,eee $arr=${test} $echo ${arr} aaa,bbb,ccc,ddd,eee $OLD_IFS=$IFS $IFS=, $arr2=${test} $echo ${arr2} aaa bbb ccc ddd eee $IFS=${OLD_IFS}
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
本文題目:shell字符串操作-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://aaarwkj.com/article26/gcdjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、Google、網(wǎng)站設(shè)計、品牌網(wǎng)站制作、面包屑導(dǎo)航、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容