在eclipse工作区搜索(CTRL + H)中,可以使用哪个正则表达式来查找不以2前导斜杠(/)开头的单词的出现 - 或换句话说,未注释?
例如//var_dump
和// var_dump
是不匹配的,但var_dump
是要匹配的内容。
答案 0 :(得分:1)
文件搜索选项卡中的以下正则表达式可以执行此操作:
(?<!//)[ \t]*var_dump
如果您只关心某一行的第一个单词,请在其前面加上一个插入符号:
^(?<!//)[ \t]*var_dump
(?<!//)
部分是一个负面的背后 - 它只匹配不在您要查找的事物之前具有括号内容的事物。
但是,如果您要查找未注释的变量而不是特定组合“//”之前的变量,您可能最好使用语法感知搜索,这取决于所使用的语言。例如,此正则表达式仍将匹配/* var_dump */
,您可能希望也可能不希望这种情况发生。语法感知搜索会知道这是评论。
如果查看“搜索”窗口,您将看到“Java搜索”选项卡以及您可能拥有的其他插件的选项卡(例如,我有“C / C ++搜索”和“Git搜索”)。在这些选项卡中,您可以选择仅搜索函数,变量,类或该语言中有意义的任何其他内容。
您可能想要的另一件事是在单词上按 Ctrl - Shift - G ,它将列出对此的所有引用代码中的对象 - 在尝试跟踪调用函数或使用变量时非常有用。
答案 1 :(得分:0)
如果您正在寻找变量名称(或任何其他类型的Java元素的名称),您可以使用Java搜索而不是文件搜索。您没有正则表达式支持,但搜索知道您正在寻找变量/类名称,因此您不必担心周围的语法。