我有大约100线,看起来像下面:使用Eclipse查找和替换所有交换参数
的assertEquals(results.get(0).getID(),1);
它们都以assertEquals开头并包含两个参数。我正在寻找一种方法来使用查找和全部替换掉所有这些行的参数。
由于
我有大约100线,看起来像下面:使用Eclipse查找和替换所有交换参数
的assertEquals(results.get(0).getID(),1);
它们都以assertEquals开头并包含两个参数。我正在寻找一种方法来使用查找和全部替换掉所有这些行的参数。
由于
使用以下正则表达式找到:
assertEquals\((.*),(.*)\);
和该替换值:
assertEquals(\2,\1);
的正则表达式意味着“的assertEquals(之后的第一组字符,接着用逗号跟着第二组字符后跟);“。
重置值意味着“assertEquals”(紧接着是第二组字符,后面跟着一个逗号,接着是后面跟着的第一组字符);“。
我不知道该怎么做在Eclipse中,但如果你恰好也有一个vim
安装你可以加载文件,并做
:%s/\(assertEquals(\)\(.*\),\(.*\))/\1\3,\2)/
如果你发现自己在交换参数顺序方法声明往往是很常见的,我发现了一个插件,只需点击一下即可完成。
这个插件增加了两个工具栏按钮到Eclipse Java编辑器:
Swap backward Swap forward
随着插入符号|在:
void process(int age, String |name, boolean member) {...}
点击交换前进按钮收率:
void process(int age, boolean member, String |name) {...}
或点击与原始源收率交换向后按钮:
void process(String |name, int age, boolean member) {...}
您也可以使用Eclipse的内置方法签名重构来重新排序参数。
在从JUnit转换到TestNG(它看起来像是在做什么)的情况下,可以将org.testng.Assert复制到项目中,然后重构assertXYZ方法来转置预期/实际参数。
完成后,删除org.testng的副本。断言
这非常接近,但它不处理'assertEquals(“a”,methodCall(a,b));'。它将它变成'assertEquals(b),“a”,methodCall(a);'而不是'assertEquals(methodCall(a,b),“a”); – pards