regex-negation - Regex not contain - 正则表达式来匹配不包含单词的行。

Regex and or not / regex

我知道可以匹配一个单词,然后使用其他工具(例如 grep -v )反转匹配。但是,是否可以使用正则表达式匹配不包含特定单词(例如 hede )的行?

hoho
hihi
haha
hede
grep "<Regex for 'doesn't contain hede'>" input

期望的产出:

hoho
hihi
haha

20 revs, 14 users 18%



Answer #1

有了这一点,你就可以避免在每个位置上测试一个看板。

/^(?:[^h]+|h++(?!ede))*+$/

相当于(对.net)。

^(?>(?:[^h]+|h+(?!ede))*)$

老答案。

/^(?>[^h]+|h+(?!ede))*$/