我正在尝试在一个大型库中设置我的 include 语句。 我需要编辑以“C:/Users/...”开头的特定包含路径,因此路径的结尾是“.h”,而不是“.h>” 一些不以“C:/Users/...”开头的路径需要保留“.h>”,因此为什么简单的查找“.h>”并替换为“.h””不起作用。
我有什么:#include "C:/Users/{不同头文件的各种路径}.h>
我需要的是:#include "C:/Users/{指向不同头文件的各种路径}.h"
有数百个头文件。在 Eclipse 中,菜单中的正则表达式选项框 (search->file) 是解决方案,但我没有成功使用正确的表达式。我得到的最接近的是:
搜索:(\Q#include "C:/Users\E\w+\.h>)$
替换:$1.h"
最佳答案
你可以使用
(#include "C:/Users.*\.h")$
参见 regex demo
详情
#include "C:/Users
- 文字字符串#include "C:/Users
.*
- 除换行字符外的任何 0+ 个字符,尽可能多\.
- 一个点h"
- 文字h"
子串$
- 字符串/行的结尾(取决于您使用它的位置以及您是否传递了m
修饰符)。
(...)
创建一个捕获组,您可以使用 $1
反向引用从替换模式中引用该组。
关于c++ - Eclipse IDE,正则表达式搜索和替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46902796/