Eclipse查找替换巧妙技巧用法

用Eclipse时,查找替换,可能是我们经常用的工具,但大多数只是查找替换简单的单词文本(如查找替换warnings),但遇到复杂的情况时,大多数人可能就手工改了。

例如:

/*     */ public class Configuration
/*     */ {
/*     */   private List contexts;
/*     */   private List classPathEntries;
/*     */ 
/*     */   public Configuration()
/*     */   {
/*  41 */     this.contexts = new ArrayList();
/*  42 */     this.classPathEntries = new ArrayList();
/*     */   }
/*     */
/*     */   public void addClasspathEntry(String entry) {
/*  46 */     this.classPathEntries.add(entry);
/*     */   }
/*     */ }

在遇到上述代码时,我们能很简单的替换掉“/*     */”,但是却无法替换类似“/*  41 */”的注释。


其实,Eclipse的查找替换工具是支持正则表达式的,如图:

Eclipse查找替换巧妙技巧用法_第1张图片

勾选"Regular expressions",即切换为“正则表达式”模式。

在Find输入框中输入:/\* (\s|\w)* \*/

然后替换便可一次性将所有“/*     */”及其中间含有数字的注释替换掉。


再例如,匹配以开头结尾的字符串:.*?

匹配HTML或XML标签:<(\S+)(((\s[^<>]*)?\/>)|(\s[^>]*)?>[\s\S]*?<\/\1\s*>)


我们知道查找替换支持正则表达式后,能实现很多的查询匹配,不过需要注意的是模糊匹配时要谨慎,不然替换错了容易导致问题。

你可能感兴趣的:(开发工具,项目经验,java)