查找并添加到所有浮动

时间:2013-12-06 13:50:26

标签: replace sed awk grep

这可能是一个非常简单的问题,但我想知道如何找到文件中的所有浮点数并用一些文本包围它们,例如。

输入文件:

input1 & X & Y & Z \\
input2 & ...

输出文件:

input1 & float(X) & float(Y) & float(Z) \\
input2 & ...

我正在考虑使用sed或awk,但我没有看到找到的浮点数如何在替换后的字符串中重用。

2 个答案:

答案 0 :(得分:1)

使用awk

awk '{$3="float("$3")";$5="float("$5")";$7="float("$7")"}1' file
input1 & float(X) & float(Y) & float(Z) \\

这只是根据位置替换。

答案 1 :(得分:1)

用sed肮脏而快速:

kent$  echo "input1 & 3.5 & 0.5 & 3.55"|sed 's/[0-9]\+\.[0-9]\+/float(&)/g'
input1 & float(3.5) & float(0.5) & float(3.55)