我知道可以匹配一个单词,然后使用其他工具(例如grep -v)反转匹配.但是,我想知道是否可以使用正则表达式匹配不包含特定单词的行(例如hede).
输入:
hoho
hihi
haha
hede
Run Code Online (Sandbox Code Playgroud)
码:
grep "<Regex for 'doesn't contain hede'>" input
Run Code Online (Sandbox Code Playgroud)
期望的输出:
hoho
hihi
haha
Run Code Online (Sandbox Code Playgroud) 在一些正则表达式中,不支持[负]零宽度断言(前瞻/后瞻).
这使得排除非常困难(不可能?).例如"每条线上没有 "foo"就可以了",如下所示:
^((?!foo).)*$
Run Code Online (Sandbox Code Playgroud)
如果不使用环视(目前预留的复杂性和性能问题),可以实现同样的目标吗?