对于我们的代码库,我需要找到所有不打印堆栈跟踪的catch语句..找到了一些包含与{线}不包括某些字符串
所以这样一行;
catch (Exception e) { }
或
catch (Exception e) {
Do Something
}
或
catch (Exception e) {
}
而如果字符串 “堆栈跟踪” 是{}
我有这个
之间的任何地方包括不包括catch\b\s*\(.*\)\s*\{.*\n*(?!stackTrace).*\n*\}
这似乎是多数工作,除了多条线..
任何人都可以帮忙吗?
谢谢
编辑:一些故障的例子..它倾向于失败;
} catch (NameNotFoundException e) {
}
它适用于这个
} catch (JSONException e) {
}
什么语言是你的脚本来完成解析中定义的规则? – corsiKa
在我看来,正在扫描的语言是Java,但扫描的内容是什么?取决于您的平台和正则表达式选项,一些成功/失败示例将会很好 – Borodin
。可能不符合\ n。所以你似乎在寻找文字,然后是\ n *,然后不是“stackTrace”,后面是文字,后面是\ n *。我认为你的意思是文本部分也包括\ n's。所以对我来说,你似乎需要说一些像“{[。\ n] *(?!stackTrace)[。\ n] *} –