使用 sed 将 (true || ... ) 添加到函数

使用 sed 将 (true || ... ) 添加到函数

我很快想通过true ||在每个函数调用前面添加来修补一个巨大的库。

输入示例:

if function_a(some_parameters) && function_b

会变成

if (true || function_a(some_parameters)) && function_b

问题在于,仅在前面添加true || 就会禁用整个语句。因此我必须在函数调用周围添加括号。

每次的参数都不一样。

GNU sed 可以做到这一点吗?

答案1

在收到评论中的一些反馈后,我最终使用了

sed 's/function_a([^()]*)/true/'

此命令将每个实例替换为function_a (some_optional_parameters)true。

它之所以有效,是因为参数中没有嵌套函数。function_a.请注意,这不适用于每种编程语言/具有嵌套函数的程序。

相关内容