我有多个带有很多循环的代码文件。现在我必须将所有文件中的所有循环计数更改为当前计数的 4 倍。有没有办法可以同时对所有文件实现此目的。
循环看起来像:
RUN FOR 300;
每个循环的计数 (300) 都会发生变化。
答案1
将单个文件中出现的所有数字四倍化,以 的形式出现,RUN FOR <N>;
其中<N>
是任意数字,可以使用 Perl 来完成:
perl -pe 's/(\bRUN FOR )(\d+)(;)/ $1 . 4*$2 . $3 /ge;' codefile
查找有关“元字符”和“断言”的部分Perl正则表达式手册如果您需要匹配行的开头或类似的内容。
awk
如果我们更准确地了解输入格式,这也许可以完成。
(不过,我确实怀疑从程序结构的角度来看,这种修改程序的方法并不是最巧妙的方法。)