Regex 在Git Bash for Windows中,使用grep在行首或分隔符后查找字符串
我有这样的档案:Regex 在Git Bash for Windows中,使用grep在行首或分隔符后查找字符串,regex,grep,git-bash,Regex,Grep,Git Bash,我有这样的档案: blue|1|red|2 green|3|blue|4 darkblue|0|yellow|3 我想使用grep在行首或任何地方查找包含blue |的内容,但不查找任何darkblue |或| blueberry | 我试图使用grep[^ | \\124;]blue \,但Git Bash给了我错误: $ grep [^|\|]blue\| *.* grep: Unmatched [ or [^ sh.exe": |]blue|: command not found 我做
blue|1|red|2
green|3|blue|4
darkblue|0|yellow|3
我想使用grep在行首或任何地方查找包含blue |
的内容,但不查找任何darkblue |
或| blueberry |
我试图使用grep[^ | \\124;]blue \
,但Git Bash给了我错误:
$ grep [^|\|]blue\| *.*
grep: Unmatched [ or [^
sh.exe": |]blue|: command not found
我做错了什么?正确的方法是什么?这里有一个快速而肮脏的方法:
grep -E '(^|\|)blue\|' *
匹配行首或
,后跟蓝色
。重要的一点是,您需要扩展正则表达式(通过egrep
或-E
标志)来使用
(或)构造。另外,请注意正则表达式周围的单引号
那么,在回答OP的“我做错了什么?”