正则表达式排除

时间:2015-03-24 08:51:05

标签: regex

我有一个字符串列表:

foo001
foo003
foo004
foo005
foo006
.
.
.
foo010
foo011
foo012
foo013

我想要一个匹配除foo001之外的所有内容的正则表达式。

^ foo00 [3-9]是不够的(离开foo010,foo011 ......)

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

^foo(?!001$)\d+$

试试这个。看看演示。

https://regex101.com/r/tJ2mW5/10

negative lookahead将禁止001

答案 1 :(得分:1)

使用否定先行断言。

^(?!foo001$).+

答案 2 :(得分:1)

您需要使用锚点^$来测试单个值,或者使用Multiline选项,如果它们放在文本中的单独行中,并且是前瞻性的:

^(?!foo0{2}1).+$

请参阅demo