Eclipse IDE,正则表达式搜索和替换

Eclipse IDE, regular expression search and replace

本文关键字:替换 搜索 正则表达式 IDE Eclipse      更新时间:2023-10-16

我正在尝试在大型库中设置我的包含语句。我需要编辑以"C:/Users/..." 开头的特定包含路径所以路径的结尾是".h",而不是".h>"某些路径不以"C:/Users/..."需要保留".h>",因此为什么简单的查找".h>"并替换为".h"不起作用。

我有什么:#include "C:/Users/{various paths to different headerfiles}.h>

我需要什么:#include "C:/Users/{various paths to different headerfiles}.h"

有数百个头文件。在 eclipse 中,菜单中的正则表达式选项框(搜索>文件)是解决方案,但我在使用正确的表达式方面没有成功。我得到的最接近的是:

搜索: (Q#include "C:/UsersEw+.h>)$

替换:$1.h"

您可以使用

(#include "C:/Users.*.h")$

查看正则表达式演示

  • #include "C:/Users - 文本字符串#include "C:/Users
  • .* - 除换行符字符以外的任何 0+ 字符,尽可能多
  • . - 一个点
  • h" - 文本h"子字符串
  • $ - 字符串/行的末尾(取决于您使用它的位置以及是否传递m修饰符)。

(...)创建一个捕获组,您可以使用$1反向引用从替换模式中引用此组。

谢谢

@Wiktor-Stribiżew!

对于那些有正则表达式问题的人,Wiktor发布了一个非常有用的链接来做你自己的测试,并尝试自己解决问题。

(#include "C:/Users.*.h")$解决了我的搜索问题。

用"$1fixThis"替换了我的搜索,给它一个唯一的名称,这样我就可以进行基本的搜索和替换以修复我的包含路径的引号。