2016-08-11 16 views
1

私は、Bash文字列の角括弧を除去するソリューションを探しています。私は「[」と「]」を解消する方法がわからないのですがBash文字列のリテラルな角括弧の置換/削除

ldr r3, [r0,#8]! 

:たとえば は、文字列を考えます。可能な限りエレガントな方法ですべてのシンボルを削除したいと考えています。

str="ldr r3, [r0,#8]!" 
echo ${str//[,.!]/} 

大括弧が付いています。これはどのように達成できますか?

答えて

2

使用

echo "${str//[][,.!]}" 

[]が有用パターンではないので、それは記載されている最初文字である場合、]をブラケット表現の一部として扱われます。ブラケット式は入れ子にできないため、[には制限はありません。

echo "${str//[[\],.!]}" 
+0

パーフェクト:

あなたは、単に]を逃れることができます。ご説明ありがとうございます! –

関連する問題