有哪些shell字符串操作方法-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“有哪些shell字符串操作方法”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“有哪些shell字符串操作方法”吧!

創(chuàng)新互聯(lián)公司專(zhuān)注為客戶(hù)提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、尼元陽(yáng)網(wǎng)絡(luò)推廣、小程序定制開(kāi)發(fā)、尼元陽(yáng)網(wǎng)絡(luò)營(yíng)銷(xiāo)、尼元陽(yáng)企業(yè)策劃、尼元陽(yáng)品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供尼元陽(yáng)建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:muchs.cn

1,取得字符串長(zhǎng)度

代碼如下:

string=abc12342341          //等號(hào)二邊不要有空格
echo ${#string}             //結(jié)果11
expr length $string         //結(jié)果11
expr "$string" : ".*"       //結(jié)果11 分號(hào)二邊要有空格,這里的:根match的用法差不多


2,字符串所在位置

代碼如下:

expr index $string '123'    //結(jié)果4 字符串對(duì)應(yīng)的下標(biāo)是從0開(kāi)始的


這個(gè)方法讓我想起來(lái)了js的indexOf,各種語(yǔ)言對(duì)字符串的操作方法大方向都差不多,如果有語(yǔ)言基礎(chǔ)的話,學(xué)習(xí)shell會(huì)很快的。

3,從字符串開(kāi)頭到子串的較大長(zhǎng)度

代碼如下:

expr match $string 'abc.*3' //結(jié)果9


個(gè)人覺(jué)得這個(gè)函數(shù)的用處不大,為什么要從開(kāi)頭開(kāi)始呢。

4,字符串截取

代碼如下:

echo ${string:4}      //2342341  從第4位開(kāi)始截取后面所有字符串
echo ${string:3:3}    //123      從第3位開(kāi)始截取后面3位
echo ${string:3:6}    //123423   從第3位開(kāi)始截取后面6位
echo ${string: -4}    //2341  :右邊有空格   截取后4位
echo ${string:(-4)}   //2341  同上
expr substr $string 3 3   //123  從第3位開(kāi)始截取后面3位


上面的方法讓我想起了,php的substr函數(shù),后面截取的規(guī)則是一樣的。

5,匹配顯示內(nèi)容

代碼如下:

//例3中也有match和這里的match不同,上面顯示的是匹配字符的長(zhǎng)度,而下面的是匹配的內(nèi)容
expr match $string '\([a-c]*[0-9]*\)'  //abc12342341
expr $string : '\([a-c]*[0-9]\)'       //abc1
expr $string : '.*\([0-9][0-9][0-9]\)' //341 顯示括號(hào)中匹配的內(nèi)容


這里括號(hào)的用法,是不是根其他的括號(hào)用法有相似之處呢,

6,截取不匹配的內(nèi)容

代碼如下:

echo ${string#a*3}     //42341  從$string左邊開(kāi)始,去掉短匹配子串
echo ${string#c*3}     //abc12342341  這樣什么也沒(méi)有匹配到
echo ${string#*c1*3}   //42341  從$string左邊開(kāi)始,去掉短匹配子串
echo ${string##a*3}    //41     從$string左邊開(kāi)始,去掉最長(zhǎng)匹配子串
echo ${string%3*1}     //abc12342  從$string右邊開(kāi)始,去掉短匹配子串
echo ${string%%3*1}    //abc12     從$string右邊開(kāi)始,去掉最長(zhǎng)匹配子串


這里要注意,必須從字符串的第一個(gè)字符開(kāi)始,或者從最后一個(gè)開(kāi)始,

7,匹配并且替換

代碼如下:

echo ${string/23/bb}   //abc1bb42341  替換一次
echo ${string//23/bb}  //abc1bb4bb41  雙斜杠替換所有匹配
echo ${string/#abc/bb} //bb12342341   #以什么開(kāi)頭來(lái)匹配,根php中的^有點(diǎn)像
echo ${string/%41/bb}  //abc123423bb  %以什么結(jié)尾來(lái)匹配,根php中的$有點(diǎn)像


到此,相信大家對(duì)“有哪些shell字符串操作方法”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)建站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!

本文標(biāo)題:有哪些shell字符串操作方法-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://muchs.cn/article2/deiioc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、靜態(tài)網(wǎng)站、自適應(yīng)網(wǎng)站、建站公司、網(wǎng)站維護(hù)關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)