たとえば、括弧の間のスペースのみを削除すると、この投稿のタイトルは次のようになります。
How can I remove a character onlyfoundbetweenbrackets, and take the brackets along for the ride?
ここでは、角かっこを所定の位置に保持する例だけを見ました。
編集する:スペースを削除する必要はありません。削除する必要があります。N特徴。
これは私のコードです。Ns、しかし残念ながらこれは不快な中括弧を残します。
sed -i "" -e :1 -e 's/\({[^}]*\)[ñ]/\1/g;t1' file
_________________________________________________
ñañañañañañañaña{ñañañañañañañaña}batmañañañañañañañaña{ñañañañañañañaña}batmañ
getting:
ñañañañañañañaña{aaaaaaaa}batmañañañañañañañaña{ñañañañañañañaña}batmañ
but wishing for:
ñañañañañañañañaaaaaaaaabatmañañañañañañañaña{ñañañañañañañaña}batmañ
FreeBSD/MacOS では gawk や GNU sed は使用できません。
ベストアンサー1
の場合、perl
文字がñ
UTF-8でエンコードされ、その文字のプリアセンブリと分解バージョンを処理すると仮定します。
perl -C -pi -e '
BEGIN {
$c = qr{\N{LATIN SMALL LETTER N WITH TILDE}|n\N{COMBINING TILDE}}
}
s<\{([^}]*$c[^}]*)\}><$1 =~ s/$c//gr>ge' -- your-file
(入れ子がないと仮定{...}
)。