検索して最後の4文字に置き換えます。

検索して最後の4文字に置き換えます。

ここには、次のデータを含むCSVファイルがあります。

1,2,CC-12345678-20201120,6
1,3,CC-87654321-20201110,5

「CC-」の後の特定の文字列を最後の4桁に置き換える必要があります。

予想出力:

1,2,CC-5678-20201120,6
1,3,CC-4321-20201110,5

awkやsedを使用しようとしています。ありがとう

ベストアンサー1

そしてsed

sed 's/CC-[^-]*\([^-]\{4\}\)/CC-\1/' file

または、読みやすくするには、拡張正規表現を使用してください。

sed -E 's/CC-[^-]*([^-]{4})/CC-\1/' file

これによりs、ダッシュ以外の最後の 4 文字とダッシュ以外の文字の後続の数字が変わり、その後に で表示される 4 文字が置き換えられます。CC-[^-]*[^-]\{4\}CC-\(\)

おすすめ記事