我正在开发一个拥有数千个Java文件的大项目。我要做的是用错误级别替换catch块中的所有信息级别日志记录。这是和示例方法。
public static String maskNoToLast4(String number) {
StringBuffer prepared = new StringBuffer("");
try {
number = number.trim();
return "*" + number.substring(number.length() - 4, number.length());
} catch (Exception e) {
LGR.info("Error While last four digits of card", e);
}
return prepared.toString();
}
有没有办法找到调用LGR.info()方法的所有catch块?
答案 0 :(得分:0)
这取决于它是否是一个空的捕获块。
空的catch块类似于:
.*(catch\w?(.?)\w*{\w*})
其中\ w是空格字符的开关。这基本上抓住了你所有的东西:catch(...){},但它不允许{}括号内的东西。
我怀疑你想要将信息自动替换为严重。让我们最好不要假设记录器总是被称为LGR,然后我们得到
.*catch\w?(.?)\w*{.*\.(info).*}.*
这样你就可以获得任何捕获(如上所述,其中包含任何内容,然后是.info,然后再重复任何内容.RegExp会将信息作为匹配组返回。