sublime搜索按正则过滤

文件结构:

app/A/services/*.*
app/B/services/*.*

使用sublime3时,如果我想搜索项目下所有services文件夹下的文件内容,在where过滤条件栏应该如何写?

试了几种类似/app/**/services/*.*这样的写法,好像filter没有*的这种正则?如果没有,是否有什么插件可以满足这种搜索需求?

我想要的其实就是类似于glob模块的文件名匹配规则。不论是app/A/sub/services/a.js还是app/A/services/b.html,不管有几层父级目录都可以用**匹配,不论什么类型文件都可以用*.*匹配。

阅读 8.3k
2 个回答

Preferences->Settings - User

排除特定目录,使用:"folder_exclude_patterns": [...., "._.{*}"],

排除特定文件,使用:"file_exclude_patterns": [...., "._.{*}"],

Where里面写:app/A/services,app/B/services,test.*

具体的操作其实你可以点击右边的...按钮,然后下面有选择Add FolderAdd Include/Exclude Filter,前面一个是加搜索的文件夹,后面一个是添加包含/排除过滤器,然后点了以后可以参考语法的。

我这个答案就是根据那个语法猜的,猜测,所有在Where里面添加的,其实都属于过滤器范畴。所有过滤器叠加之后,就是筛选的条件。所有过滤器以逗号分隔,如果其中一个过滤器为文件夹路径,则搜索文件夹中包含此文件夹,如果过滤器为*.*格式或者-*.*格式,则为文件名过滤器。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进