Unix
如何從 Unix 中的字元串中刪除某些字元?
我有兩個這樣的字元串
a=[2018:09:11-18:37:06:376476]
b=[2018:09:11-18:37:06:376446]
我想要兩個字元串
a= 20180911183706376476
b= 20180911183706376446
任何人都可以幫助我嗎?
如果你的 shell 支持變數中的“//”替換,你可以使用
a=${a//[]:[-]/}
(請注意,“-”應該是最後一個,“]”應該是
[...]
范圍表達式中的第一個。如果沒有,你可以使用這樣的東西:
set_trim(){ local IFS=[:-]; v=$1; set -- $2; IFS=; eval "$v=$*"; } set_trim a "$a" set_trim b "$b"
或者,使用
sed
(效率較低,因為它必須啟動外部程序):a=`echo $a | sed 's/[]:[-]//g'`