不以@开头的单词列表中任何匹配项的正则表达式

Regex for any matches from a list of words not preceded by @

我继承了一个前端 Web 项目,其中有几十个非常混乱的 Less 页面。我需要追踪杂色并与品牌标准统一。我对正则表达式的理解相当有限,但如果我理解正确,一个或多个可能会让我的生活更轻松。

我正在使用 "Find in Files..." > Sublime Text 2 中的正则表达式功能。

我的策略是将所有 HEX 代码匹配为:
#[0-9a-fA-F]+\b
这似乎对我有用,但我想知道是否有任何不足之处?

接下来,对于我正在尝试的所有关键字颜色:
\b(白色|黑色|灰色|红色|等|)\b
但是,这 returns 我的变量(即@gray、@red 等)。

我需要匹配给定列表中的任何单词,前提是前面没有 @ 符号。

感谢您的帮助!

\b(?<!@)(white|black|gray|red|etc)\b

你可以让你negative lookbehindhere.See演示。

https://regex101.com/r/uE3cC4/5