前言

讲讲宇宙排名第二的开发工具—–IDEA的使用技巧

搜索/替换 技巧

阅读源码的利器

 

1、Match case: 如果勾选该按钮,搜索时将区分大小写字母。

2、Preserve case:如果勾选该按钮,搜索时不区分大小写,但替换的时候,将会把你给定的字符串的首字母替换成小写。

比如,你输入 HelloWorld,将会被替换成 helloWorld。

3、regex:可以使用正则表达式搜索,可参照 java.util.regex。

4、右上角蓝色漏斗有几个选项:

 

5、File mask:可以过滤要查找的文件格式。可以使用通配符:

 

可以同时指定多个文件,使用逗号隔开。注意:!,即否定模式,隐式的使用了 * 号匹配。

6、Search field:这是我们使用的最多的,即——搜索框,可手动输入,也可以点击下拉框寻找历史记录。也可以使用正则表达式。

7、Replace field:替换字段,可指定替换的文本,也可以使用正在表达式替换文本,如果要在表达式中使用 \,则需要在前面插入三个额外的反斜杠用于转义。

8、In Project:在自己的项目范围中搜索。

9、Module:在模块中搜索, 可以指定模块,并可以在下拉框切换模块哦。

10、Directory:在指定目录内搜索。右侧那个小文件树 icon,好像并没什么用啊……

11、Scope:在指定范围内搜索。下拉框中有各种范围。

12、Preview area:当然,最强大的还是预览窗口了,可以使用方向键上下预览,并且可以在预览框中编辑,爽的不行。

13、最危险的是下面这个操作:

 

当你重构的时候,弄的不好,就全部替换了。。。。。那就尴尬了。 说说上面几个选项的具体作用:

 

关于 Review :

 

这个算是手动模式吧,你可以一个一个检查。Replace All 就是替换所有内容,比较危险,Replace Selected 就是替换选中的内容(使用 ctrl 或 shift 多选)。

总结

好了,关于 IDEA 的搜索功能就介绍到这里啦,其实,在阅读源码的过程中,真的要学会善用搜索,当然,不仅是搜索,还有各种功能,比如打断点,断点的跳转,类的继承,实现 UML,方法调用栈,线程调用栈,变量条件判断等等,很多,这些都是阅读源码时不可获取的重要功能,在 debug 的时候,能大大提高我们的效率。

最后,如有条件,请支持正版。谢谢。

扩展阅读

杂谈篇之我是怎么读源码的

从线程池理论浅析为什么要看源码

向Spring大佬低头——大量源码流出解析

IntelliJ IDEA使用技巧

Intellij IDEA神器那些让人爱不释手的小技巧

作者:莫那·鲁道

来源:http://thinkinjava.cn/

阅读源码的利器——Intellij-IDEA-Replace-in-Path-使用技巧的更多相关文章

  1. 转载~Linux 平台下阅读源码的工具

    Linux 平台下阅读源码的工具 前言 看源代码是一个程序员必须经历的事情,也是可以提升能力的一个捷径.个人认为: 要完全掌握一个软件的方法只有阅读源码在Windows下有sourceinsight这 ...

  2. Linux 平台下阅读源码的工具链

    原文:http://blog.jobbole.com/101322/ 前言 看源代码是一个程序员必须经历的事情,也是可以提升能力的一个捷径.个人认为: 要完全掌握一个软件的方法只有阅读源码. 在Win ...

  3. Java程序员阅读源码的小技巧,原来大牛都是这样读的,赶紧看看!

    今天介跟大家分享一下我平时阅读源码的几个小技巧,对于阅读java中间件如Spring.Dubbo等框架源码的同学有一定帮助. 本文基于Eclipse IDE,我们每天都使用的IDE其实提供了很多强大的 ...

  4. 【转】使用 vim + ctags + cscope + taglist 阅读源码

    原文网址:http://my.oschina.net/u/554995/blog/59927 最近,准备跟学长一起往 linux kernel 的门里瞧瞧里面的世界,虽然我们知道门就在那,但我们还得找 ...

  5. Spring源码解析——如何阅读源码(转)

    最近没什么实质性的工作,正好有点时间,就想学学别人的代码.也看过一点源码,算是有了点阅读的经验,于是下定决心看下spring这种大型的项目的源码,学学它的设计思想. 手码不易,转载请注明:xingoo ...

  6. Spring源码解析——如何阅读源码

    最近没什么实质性的工作,正好有点时间,就想学学别人的代码.也看过一点源码,算是有了点阅读的经验,于是下定决心看下spring这种大型的项目的源码,学学它的设计思想. 手码不易,转载请注明:xingoo ...

  7. 阅读源码(III)

    往期系列: <由阅读源码想到> <由阅读源码想到 | 下篇> Medium上有一篇文章Why You Don't Deserve That Dream Developer Jo ...

  8. 阅读源码(IV)

    往期系列: <由阅读源码想到> <由阅读源码想到 | 下篇> <阅读源码(III)> Eric S.Raymond的写于2014年的<How to learn ...

  9. How Tomcat works — 一、怎样阅读源码

    在编程的道路上,通过阅读优秀的代码来提升自己是很好的办法.一直想阅读一些开源项目,可是没有合适的机会开始.最近做项目的时候用到了shiro,需要做集群的session共享,经过查找发现tomcat的s ...

随机推荐

  1. 发布 npm遇到的问题

    npm publish 遇到 403 怎么办? 这说明你没有切换到 npm 原始源,那么你只需要用 npm config delete registry 删除淘宝源,然后再 publish. publ ...

  2. shrio总结

    AccessControlFilter(https://www.jianshu.com/p/9bfa22b0e905) SpringBoot+Shiro学习之自定义拦截器管理在线用户(踢出用户)   ...

  3. @RequestBody和@RequestParam

    @RequestBody的使用 https://blog.csdn.net/justry_deng/article/details/80972817 (@RequestBody Map map)接收多 ...

  4. mysql 安装卸载自动化脚本

    #!/bin/sh #mkdir /root/mysql #tar -xvf mysql-5.7.-.el7.x86_64.rpm-bundle.tar -C /root/mysql #cd /roo ...

  5. 基于Log4Net记录日志到SQLServer(自定义字段)

    本文记录通过log4net将日志信息记录到SQLServer数据库中. 1.新建控制台应用程序 Log4NetDemo: 2.通过NuGet安装Log4Net (项目版本2.0.8): 3.项目根目录 ...

  6. 用Python发一封图文并茂的邮件

    最近使用了不少通讯工具的接口, 比如企业微信机器人,钉钉,微信公众号的接口(未认证的订阅公众号),相对于邮件来说,它们的表现形式太弱.比如没有更丰富的版本方式.当然了,并不是说表现形式越棒就是约好的通 ...

  7. 趣味vi:Do you love me?

    看到网上有很多这样的小趣味exe,自己用labview也做了一个,可能有很多bug,马马虎虎能用,大家可以发给自己滴那个人,哈哈哈.源码vi和exe文件都在链接中https://files.cnblo ...

  8. 05_Python的文件操作

    1.文件操作概述 # 文件是用于数据存储的单位通常用来长期存储设置,文件中的数据是以字节为单位进行顺序存储的     1.打开文件: f = open("xxx") 或 with ...

  9. Oracle12C配置对外访问

    Oracle12C配置对外访问 第一步: 开放端口或者关闭防火墙 第二步: 配置Oracle net manager打开Net manager 修改为共享服务器 第三步: 配置连接数打开Databas ...

  10. [bash]用于查找指定格式目录的程序

    功能: 在指定目录下查找符合yyyy-MM-dd(-d)nnn模式的目录名,例如2020-03-22-b888 目标目录情况: [root@localhost testfolder]# ll tota ...