我需要一个能够匹配的正则表达式:
- a)某个单词的小写/大写的所有组合
- b)除了几个特定的案例组合。
我必须搜索bash
数千个源代码文件,出现拼写错误的变量。
具体来说,我正在搜索的单词是FrontEnd
在我们的编码风格指南中可以根据上下文以两种方式准确编写:
FrontEnd (F and E upper)
frontend (all lower)
所以我需要“捕捉”任何不符合我们编码标准的事件:
frontEnd
FRONTEND
fRonTenD
我已经阅读了许多关于这个特定示例的正则表达式教程,但我找不到一种方法来说“匹配这个模式,但如果它恰好是这个或另一个,则不匹配”。
我想这类似于尝试匹配“000000 到 999999 之间的任何数字,除了数字 555555 或数字 123456”,我想逻辑是相似的(当然我也不打算这样做:))
谢谢
附加评论:
我不能使用grep
piped to,grep -v
因为我可能会错过线路;例如,如果我这样做:
grep -i frontend | grep -v FrontEnd | grep -v frontend
会错过这样的一行:
if( frontEnd.name == 'hello' || FrontEnd.value == 3 )
因为第二次出现会隐藏整行。因此,我正在寻找一个正则表达式来使用egrep
能够进行我需要的完全匹配。