Java Eclipse如何在每个System.out.print之前添加一行
我想在Eclipse的帮助下,在所有java文件中的所有System.out.print语句上添加控件 我将使用Eclipse正则表达式搜索和替换 我想做以下几件事 案例1:变更: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,也不知道如何插入“如果(打印输出)”并将
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");