我有与这篇文章完全相同的问题,但是在 bash 中,正则表达式对我不起作用。正则表达式排除,寻找一个没有跟在另一个词后面的词
我想包含包含单词“Tom”的 csv 文件的所有行,除非后面跟着“Thumb”。
Tom(?!\s+Thumb)当我在 regex101.com 上试用时,正则表达式可以工作。
但是我已经尝试了所有这些变体,但没有一个起作用。我错过了什么,我该如何解决这个问题?我在 Mac 上。
cat inputfile.csv | grep Tom(?!\s+Thumb) > Tom.csv
cat inputfile.csv | egrep Tom(?!\s+Thumb) > Tom.csv
cat inputfile.csv | egrep “Tom(?!\s+Thumb)” > Tom.csv
cat inputfile.csv | grep -E Tom(?!\s+Thumb) > Tom.csv
cat inputfile.csv | grep -E “Tom(?!\s+Thumb)” > Tom.csv