我正在尝试提出一个满足
的代码1。)将3的第一个实例替换为5。
2。)1.)仅在数字的第一个数字3时才可以发生。
例如,
38765-> 58765
43765不会被转换。
到目前为止,我有
sed 's/^3/5/' *.txt
但是我只是想不出一种方法来指定位置1 == 3时的条件。
我该怎么做才能改善?
答案 0 :(得分:1)
Sed:
$ echo 38765 | sed 's/^3/5/'
58765
$ echo 43765 | sed 's/^3/5/'
43765
即。只需用5r替换前导3。
要在第二位置替换3:
$ echo 33765 | sed 's/\(^.\)3/\15/'
35765
更通用的方法:
$ echo 33333 | sed 's/\(^.\{3\}\)3/\15/'
33353 ^
number of characters before the one to replace, 0-4