我目前正在重构别人编写的程序。
我想find all DAOs inside for loops
并尽可能将其更改为一次性DB访问。
我已经尝试过以下正则表达式,但是它找不到我想要的东西。它仅搜索后跟DAO的循环。
for\s*\((.*\r\n)*?.*dao
它可以帮助我手动修复DAO,但是仍然有太多代码。
在for循环中找到DAO的正则表达式是什么?
更新
这是一个例子。
for (String userId : userIds) {
User user = UserDao.select(userId);
System.out.println(user);
}
最佳答案
我会用这样的东西:
for\s+\(.*?\)\s*\{.*?dao.*?\}
确保打开
dotall
标志,以便.
也可以匹配换行符。测试here。关于java - 正则表达式在for循环中找到DAO,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25333714/