В контексте этого вопроса я хочу сделать следующие изменения:
Найти:
funcA (param0, param1, param2, param3);
Заменить:
if(isTrue)
funcB(param0,funcC(param1,param2,param3));
funcA может иметь любое количество параметров, кроме param0.Как это можно сделать? Для простоты проигнорируйте базовый регистр, т.е. когда param pass to funcA является только param0.
funcA:
public void funcA(String param0,Object... params)
funcC:
public void funcB(Object... params).
РЕДАКТИРОВАТЬ:
Параметры (param1, param2..) - это просто строка, содержащая алфавиты.
Регулярное выражение поиска:
^ *funcA *\(([^,\s;)]*) *(?:, *([^)\;]+))?
Замена:
if(isTrue) funcB($1, funcC($2)
funcA(param0,param1.trim(), param2, param3.size());
и т.д?