大きなtxtファイルを変更しています。文字列パターンの右側にゼロを埋め込むワンライナーはありますか? たとえば、小数点以下 1 桁または 2 桁から 3 桁に移動します。例えば、0.21 から 0.210 または 0.5 から 0.500 まで? 私が試していたコード:
perl -p -i -e 's/(\.\d{1,2})/\10/g' myFile.txt
助けてくれてありがとう:)
大きなtxtファイルを変更しています。文字列パターンの右側にゼロを埋め込むワンライナーはありますか? たとえば、小数点以下 1 桁または 2 桁から 3 桁に移動します。例えば、0.21 から 0.210 または 0.5 から 0.500 まで? 私が試していたコード:
perl -p -i -e 's/(\.\d{1,2})/\10/g' myFile.txt
助けてくれてありがとう:)
Barmar がコメントで述べたように、を使用sprintf
して小数点以下の桁数を指定できます。
perl -p -i -e 's/(\d+\.\d+)/sprintf "%.3f", $1/eg' myFile.txt
ノート:
%.3f
小数点以下 3 桁の浮動小数点数を意味します。e
flag は、置換側を式として評価することを意味します。$1
\1
置換側の代わりに使用されます(これについてはperldoc note hereを参照してください)。