Java Eclipse如何在每个System.out.print之前添加一行

Java Eclipse如何在每个System.out.print之前添加一行,java,eclipse,Java,Eclipse,我想在Eclipse的帮助下,在所有java文件中的所有System.out.print语句上添加控件 我将使用Eclipse正则表达式搜索和替换 我想做以下几件事 案例1:变更: System.out.println("this"); 致: 案例2:忽略: //System.out.println("that"); 或 使用“System.out.print(+)”我可以找到“System.out.print…”的所有位置 但我不知道如何处理案例2,也不知道如何插入“如果(打印输出)”并将

我想在Eclipse的帮助下,在所有java文件中的所有System.out.print语句上添加控件

我将使用Eclipse正则表达式搜索和替换

我想做以下几件事

案例1:变更:

System.out.println("this");
致:

案例2:忽略:

//System.out.println("that");

使用“System.out.print(+)”我可以找到“System.out.print…”的所有位置

但我不知道如何处理案例2,也不知道如何插入“如果(打印输出)”并将作为单独一行插入

请帮忙

编辑:

我们有记录系统。那些System.out.print语句是特殊的额外语句

编辑2:

这个案例的答案也可能对其他案例有用

编辑3:

Andy解决了我的第一个问题:“^\s*System.out.print”

现在,如何使用新行将一行更改为两行

编辑4:

我得到了答案:

替换:
^\s*系统输出打印(+)


with:
if(PRINT OUT)\r\n system.OUT.PRINT$1

在Andy Tunner的帮助下得到了答案:

替换:
^\s*系统输出打印(+)


使用:
if(PRINT OUT)\r\nSystem.OUT.PRINT$1

为什么不在案例1和案例2中用
mySpecialPrintMethod
替换
System.OUT.println
,然后您可以通过更新一种方法来更新所有位置;当您取消注释时,已注释的案例将立即生效?(避免案例2的最简单方法是搜索
^\s*System.out.print
)为什么不使用日志记录并设置适当的日志级别,而不是使用
System.out.println
?@AndyTurner,您已经帮助了我第一个问题,谢谢。除了编辑问题以添加解决方案外,请将其作为答案发布,但是(甚至可以在页面上直接回答问题)
//System.out.println("that");
////System.out.println("that");