Java 查找替换的正则表达式
在的上下文中,我想做以下更改: 查找: funcA(参数0,参数1,参数2,参数3) 更换:Java 查找替换的正则表达式,java,regex,sublimetext2,Java,Regex,Sublimetext2,在的上下文中,我想做以下更改: 查找: funcA(参数0,参数1,参数2,参数3) 更换: if(isTrue) funcB(param0,funcC(param1,param2,param3)); funcA可以有除param0之外的任意数量的参数。如何实现?为简单起见忽略基本情况,即当传递给funcA的param仅为param0时 funcA是: public void funcA(String param0,Object... params) public void func
if(isTrue)
funcB(param0,funcC(param1,param2,param3));
funcA可以有除param0之外的任意数量的参数。如何实现?为简单起见忽略基本情况,即当传递给funcA的param仅为param0时
funcA是:
public void funcA(String param0,Object... params)
public void funcB(Object... params).
功能是:
public void funcA(String param0,Object... params)
public void funcB(Object... params).
编辑:
参数(param1、param2..)只是包含字母的字符串。搜索正则表达式:
^ *funcA *\(([^,\s;)]*) *(?:, *([^)\;]+))?
替换模式:
if(isTrue) funcB($1, funcC($2)
关于嵌套括号,例如
funcA(param0,param1.trim(),param2,param3.size())代码>等?不。它们肯定只是字母(名称)嗨,这看起来不错。但是你能让正则表达式先找到funcA吗。这里它假设给定的行正在调用funcA。我必须在代码中进行替换。谢谢。它也处理基本情况。这在下面的情况下不起作用。funcA(param0);funcA(参数0,参数1,参数2,参数3);但是您写道:为了简单起见,忽略基本情况
您想要什么funcA(param0)代码>替换为?虽然这是我要求的,但如果您也能为基类提供正则表达式,那就太好了。这里第四行应该转换为if(isTrue)funcB(param0,funcC())