shell中的字串操作

2022-07-28 01:33:09 字數 1666 閱讀 1883

bash shell提供了多種字串處理的命令:

格式:expr match $string $substring

作用:在string的開頭匹配substring,返回匹配到的長度,在string開頭匹配不到substring則返回0,substring能夠是正規表示式

string=」welcome to our world」

命令返回值

expr match 「$string」 w.*

20expr match 「$string」 ou.*

0格式:expr index $string $sunstring

作用:在字串string上匹配substring中字元第一次出現的字元

string=」welcome to our world」

命令返回值

expr index 「$string」 our

5expr index 「$string」 d

20expr index 「$string」 s

0執行發現。expr index的功能是尋找兩個串之間的第乙個公共字元

從右擷取

expr substr

格式:expr substr $string $position $length

與${}的差別:${}的position從0開始給string標號;expr sutstr的position從1開始給string標號

string=」welcome to our world」

命令返回值

echo $

elcome t

expr substr 「$string」 2 8

elcome t

正規表示式擷取子串

使用正規表示式僅僅能抽取string開頭處或結尾處的子串。

- expr match $string 『\($substring\)』

- expr $string : 『\($substring\)』

命令返回值

expr match 「$another」 「[0-9]*」

8expr match 「$another」 「\([0-9]*\)」

20091114

expr 「$another」 : 「\([0-9]*\)」

20091114

注意:冒號兩側有空格

substring並不是正規表示式

20091114 reading hadoop

命令結果

echo 「$」

114 reading hadoop

echo 「$」

4 reading hadoop

echo 「$」

20091114 reading h

echo 「$」

20091114 re

string=」20001020year20050509month」

命令結果

echo $

20101020year20050509month

echo $

20101020year20150509month

echo $

20001020yea

echo $

20101020year20050509month

echo $

20001020year20050509month

shell中字串的簡單操作

shell中字串的基本操作 連線,獲取長度,查詢字元位置,字串的截斷以及字串的匹配。字串的連線 下面將兩個字串連線在一起 str hello str1 world str str str1 echo str會出現 helloworld如果要出現空格,可這樣連線 str str str1 str st...

shell字串操作

1,字串剪裁 file dir1 dir2 dir3 my.file.txt 我們可以用 分別替換獲得不同的值 拿掉第一條 及其左邊的字串 dir1 dir2 dir3 my.file.txt 拿掉最後一條 及其左邊的字串 my.file.txt 拿掉第乙個 及其左邊的字串 file.txt 拿掉最...

shell 字串操作

字串長度 expr length string expr string 從字串開始的位置匹配子串的長度 expr match string substring substring 是乙個正規表示式 expr string substring substring 是乙個正規表示式 索引expr ind...