
私はこのような2つの文字列を持っています
a=[2018:09:11-18:37:06:376476]
b=[2018:09:11-18:37:06:376446]
私はこのような2つの文字列が欲しいです
a= 20180911183706376476
b= 20180911183706376446
誰か助けてくれませんか?
答え1
シェルが変数の「//」置換をサポートしている場合は、次のように使用できます。
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'`