我有一个包含以下内容的文件:
set x 0.00456 y 0.05896。
我想将数字乘以固定的数量(比方说1000)。这些数字并不总是存在于同一列中,因此任何带有awk的内容都无法显示。我一直在尝试此方法,但不确定我使用子匹配的方式是否正确。
%s / \ d *。\ d * / \ = submatch(2)* 100
您的submatch(2)
用法不正确。您没有任何匹配的组,因此您应该使用submatch(0)
。
代码中的另一个问题是,您应该首先将字符串更改为float,然后进行计算:
%s/\v\d+[.]\d+/\=str2float(submatch(0))*1000/g