regex - 如何在 SublimeText3 或 Atom 中查找不包含字符串的文件

标签 regex sublimetext3 atom-editor

我正在尝试查找不包含 string 的文件在 sublime 的项目查找器中。

我试过:^((?!string))*$但它返回包含该字符串的所有文件。有什么办法让这个工作吗?

我的用例

我有一堆 svg 文件(>400),它们都应该有一个名为 icons-background 的类在他们的某个地方。现在我只想找到没有那个类的 svg 文件并修复它们。

应该匹配

<svg viewBox="0 0 32 32">
    <path fill="#20262d" d="M23.8 0c3.5 6.4 4.2 16-9.8"></path>
</svg>

不应该匹配
<svg viewBox="0 0 32 32">
    <path fill="#20262d" class="icons-background" d="M23.8 0c3.5 6.4 4.2 16-9.8"></path>
</svg>

我目前得到的

enter image description here

解决

我最终使用的是一个 bash 命令:
find .  -type f -wholename "*/svg/*.svg" -not -path "*/node_modules/*" -exec grep -L -H 'icons-background' '{}' ';'

但是,如果有人为其中一位编辑找到解决方案,我会保留这个问题。

最佳答案

试试这个:

^((?!class="icons-background").)*$

您可以使用以下链接探索此正则表达式:

Regex101

关于regex - 如何在 SublimeText3 或 Atom 中查找不包含字符串的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35143190/

相关文章:

javascript - 解析php字符串中的多个值

react-native - 核素与流量中没有错误

javascript - 我想强制我的应用程序在启动前关闭其他后台应用程序

cmd - Sublime Text 3 - 在当前或项目目录中打开 CMD 提示 (Windows)

css - 在 Atom 编辑器中更改注释颜色

javascript - contenteditable 实时替换 youtube url

javascript - Google Apps 脚本中的正则表达式

c# - 将所有标记的字符串更改为另一个字符串

sublimetext - 用于切换 Sublime Text 3 侧边栏的 AutoHotkey 脚本还是有原生 ST 设置?

html - Sublime Text 3 - HTML 5 的 Emmet 快捷方式不起作用。