我有一个很大的代码库,我们需要在特定函数的参数中进行模式更改。
即。从foo()
格式重命名的函数something.anotherThing
的所有参数都将重命名为something_anotherThing
参数可以是任何东西,但始终采用str1.str2格式。只有这一个函数的参数才能完成,所有其他代码都应保持不变。
e.g。 foo(a.x) - > FOO(A_X) foo(a4.b6) - > FOO(a4_b6)
我有什么方法可以使用正则表达式或工具来实现它,我可以在一个步骤中为所有文件执行此操作,对于一个特定的函数?
答案 0 :(得分:0)
如果函数只有一个参数,那就很容易了:
使用能够在多个文件中搜索和替换的工具,例如。 TextCrawler
然后选择正则表达式选项卡并填写:
RegExp:
(foo\([^)]+)(\.)([^)]+\))
替换:
$1_$3
如果函数中有更多参数,则无效。但您可以再次单击“替换”按钮,然后再次单击,直到它显示未找到任何结果。您必须最多执行n次,其中n =任何函数中的最大参数数。