
入力する:
dummy - 22847847
sha - 84734747
DHS - 374874
予想出力:
du1my - 22847847
sh1 - 84734747
DH1 - 374874
答え1
$ cat test.txt
dummy - 22847847
sha - 84734747
DHS - 374874
$ awk '{$3=1}1' FS="" OFS="" test.txt
du1my - 22847847
sh1 - 84734747
DH1 - 374874
答え2
そしてsed
:
sed 's/^\(..\)./\11/' infile > expected_result
グループ一致と呼ばれ、(..)
最初の2文字をキャプチャし、\1
その文字の逆参照です。.
正規表現の点は単一の文字と一致します。
3桁目ではなくN桁目の場合は、次の手順で3桁目をに変更できます1
。
sed 's/^\(.\{2\}\)./\11/' infile
または以下に指摘したように@スチールドライバ:
sed 's/./1/3' infile