【问题标题】:Sublime on Save Build exclude patternSublime on Save Build 排除模式
【发布时间】:2015-01-30 17:40:44
【问题描述】:

我安装了一个名为“SublimeOnSaveBuild”的 Sublime 插件,它在保存时编译我的 sass 文件。但现在我要处理的不仅仅是一个文件。

该插件提供了一个过滤功能,用于检查文件名是否与\\.(sass|less|scss)$ 模式匹配。 但我需要一个匹配任何 not 前面带有下划线的文件的模式。 我试过\\(?!_).*.(sass|less|scss)$,但这不起作用。 任何想法这种模式有什么问题?

结果应该是 file.sass 被编译但不是 _file.sass

【问题讨论】:

  • 双斜杠有什么用?
  • 我不知道。我只是从插件附带的模式中复制它们。
  • 我只是在没有它们的情况下尝试了它,它就像一个魅力:)
  • 正是...您也可以将它们替换为^,它定义了字符串的开头...

标签: regex sublimetext regex-negation sublime-text-plugin


【解决方案1】:

我认为这个模式应该可以工作:^(?<!_)[a-z-]*\.(sass|less|scss)$

这部分:(?<=_) 称为肯定后向断言。

你可以在这里做一些测试:https://regex101.com/r/gN8uX1/2

【讨论】:

    【解决方案2】:

    由于 streetturtle 的答案对我不起作用,我在 https://joshuawinn.com/ignore-sass-and-less-partials-starting-with-underscore-when-using-sublimeonsavebuild/ 上找到了另一个解决方案,即

    (/|\\\\|^)(?!_)(\\w+)\\.(css|js|sass|less|scss)$
    

    【讨论】:

      猜你喜欢
      • 2015-05-07
      • 2020-07-27
      • 1970-01-01
      • 2014-02-19
      • 2012-09-06
      • 1970-01-01
      • 2015-05-25
      • 2016-09-21
      • 1970-01-01
      相关资源
      最近更新 更多