0

我想“在文件树中”就足够了,但这是我的情况。

我被赋予了替换所有实例的任务

some_function('string_parameter'.$some_optional_var.');

some_function().'string_parameter'.$some_optional_var.';在 PHP 项目中。

在调用函数的任何地方,参数都可以不同。

我很确定我可以使用正则表达式或类似的东西,但正则表达式不是我的强项......

如果有帮助,我正在使用 Eclipse Indigo。谢谢!

4

1 回答 1

2

这是一个在 Eclipse 搜索和替换中对我有用的解决方案。

搜索:

some_function\(([^)]+)\)

代替:

some_function().$1

(这会将内容放在some_function它之后的调用中,无论该内容是什么。如果这不够具体,您将需要准确描述some_function您需要处理哪种情况。)

显然,您需要打开正则表达式选项。

解释:

some_function匹配那个确切的文本。

\( ... \)由于括号是正则表达式中的特殊字符,因此需要一个反斜杠来转义它们,以便我们匹配实际的括号。

(...)内括号创建一个捕获组来记录这部分正则表达式匹配的内容。

[^)]+匹配一个或多个非括号字符的字符类(^否定字符类;+要求至少有一个字符,并匹配尽可能多的字符。

$1在替换中——插入上面括号中捕获的值。您可以使用不同的括号组捕获许多不同的事物,它们将进入$1$2$3等。

于 2012-10-19T11:20:29.767 回答