括弧、または括弧とその間のテキストを削除するメカニズムを作成したいと思います。例えば:
前:
text0 text1 text2 (text3 text4)
後:
text0 text1 text2 text3 text4
または:
text0 text1 text2
オプションと他の種類のブラケットの両方をテストしたいのですが、AwkやSedなど、どのツールを使用すればよいかわかりません。私はどんなアドバイスにも感謝します。
質問の残り半分、括弧のみを削除します(ただしnot間のテキスト):
echo 'text0 text1 text2 (text3 text4)' |
sed 's/[()]//g'
出力:
text0 text1 text2 text3 text4
テキストを保持するには、これで十分です:
tr -d '()'
テキストと括弧を削除するには:
sed 's/([^)]*)//g;s/ / /g'
テキストに次のようなネストされた括弧が含まれている場合:
echo 'text0 (text1 (textA )) text2 (text3 text4) test5' |
sed -e :A -e 's/([^()]*)//;tA' -e 's/ / /g'