使用正規表示式拆分字串(bash 3.0以上支援=~正規表示式)
# 格式:name="value1","value2"# name、value1和value2是我們需要的字串
# 在分隔符前後可以有空格(tab等無顯示字元不允許)
# 用~=做正規表示式匹配
# [ ]*表示可以有任意空格,()表示裡面是要提取的部分,.*表示任意數目的任意字串,=、,、「都沒有定義數目,因此只能有乙個
# 匹配表示式右邊最好是乙個變數,因為在bash 4.1,右邊如果是字串的話會強制使用字串匹配而不是把它當作正規表示式,請參考和
reg='[ ]*(.*)[ ]*=[ ]*"(.*)"[ ]*,[ ]*"(.*)"[ ]*'
if [[ $var =~ $reg ]]; then
# 用$獲取第n部分,n從1開始
name=$
value1=$
value2=$
fi
bash中字串處理
得到長度 x abcd 方法一 expr length x 4 方法二 echo 4 方法三 expr x 4 expr 的幫助 string regexp anchored pattern match of regexp in string 查詢子串 expr index x b 2 expr i...
Bash中的字串處理
一 字串的替換 1 說明一下,這個操作中除了第乙個引數是變數外其它兩個都是字元 還有一點就是這個操作並不是把 變數1 中的字元替換了,詳見例子 例 str1 abcabcabc123abc echo 這裡的abc和aaa都是字串,而str1是變數,並且這個操作過後str1裡的字串長度不會減少,只是產...
BASH 中的字串處理
得到長度 x abcd 方法一 expr length x 4 方法二 echo 4 方法三 expr x 4 expr 的幫助 string regexp anchored pattern match of regexp in string 查詢子串 expr index x b 2 expr i...