Eclipse查找替换巧妙技巧用法
用Eclipse时,查找替换,可能是我们经常用的工具,但大多数只是查找替换简单的单词文本(如查找替换warnings),但遇到复杂的情况时,大多数人可能就手工改了。
例如:
/* */ public class Configuration /* */ { /* */ private List<context> contexts; /* */ private List<String> classPathEntries; /* */ /* */ public Configuration() /* */ { /* 41 */ this.contexts = new ArrayList(); /* 42 */ this.classPathEntries = new ArrayList(); /* */ } /* */ /* */ public void addClasspathEntry(String entry) { /* 46 */ this.classPathEntries.add(entry); /* */ } /* */ } </context>
在遇到上述代码时,我们能很简单的替换掉“/* */”,但是却无法替换类似“/* 41 */”的注释。
其实,Eclipse的查找替换工具是支持正则表达式的,如图:
勾选"Regular expressions",即切换为“正则表达式”模式。
在Find输入框中输入:/\* (\s|\w)* \*/
然后替换便可一次性将所有“/* */”及其中间含有数字的注释替换掉。
再例如,匹配以<title>开头</title>结尾的字符串:<title>.*?</title>
匹配HTML或XML标签:<(\S+)(((\s[^<>]*)?\/>)|(\s[^>]*)?>[\s\S]*?<\/\1\s*>)
我们知道查找替换支持正则表达式后,能实现很多的查询匹配,不过需要注意的是模糊匹配时要谨慎,不然替换错了容易导致问题。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。