タブ区切りの入力ファイルがあります。一部の数値フィールド値には、値の中央にマイナス記号があります(例:)000-45.123
。私は-
次のように左側にする必要があります: -00045.123
したがって、タブで区切られた入力ファイルに次のものが含まれている場合:(スペースはタブです)
ABC 000-45.123 0-765.43 DEF 00-54 XYZ
だから私が望む結果は
ABC -00045.123 -0765.43 DEF -0054 XYZ
"-"を含むすべての数値は1つ以上のゼロで始まり、他の文字はありません。
注:利用可能なオプションはありません:sed -rまたはsed -E
ベストアンサー1
GNU sedの使用:
数字とマイナス記号からマイナス記号と数字に順序を変更します。
sed -r 's/([0-9]+)(-)/\2\1/g' file
出力:
ABC -00045.123 -0765.43 DEF -0054 XYZ