交换所有文件中的 yoda 条件字符串

交换所有文件中的 yoda 条件字符串

在我的 C 项目中,我所有的条件(几乎 20.000 个)都是用 yoda 条件编码风格编写的,我想在所有文件中更改它。例如我有:

if (0 == ret)
if (0 == rc)
if (0 != ret)
if (100 == other_variable)

是否有一种通用方法可以在所有情况下交换左右变量? (将“x == y”替换为“y == x”)

至少对于其中的大多数,其他的我可以手动完成。

谢谢

答案1

sed -E -i 's/if \((.*) == (.*)\)/if \(\2 == \1\)/' file

更改其他运营商的代码。

如何使用 sed 替换正则表达式捕获组?

相关内容