Python Regex findall但不包括条件字符串

时间:2016-09-13 03:40:09

标签: python regex findall

我有这个字符串:

The quick red fox jumped over the lazy brown dog lazy

我写了这个正则表达式给了我这个:

s = The quick red fox jumped over the lazy brown dog lazy

re.findall(r'[\s\w\S]*?(?=lazy)', ss)

这给了我以下输出:

['The quick red fox jumped over the ', '', 'azy brown dog ', '']

但我想尝试得到这样的输出:

['The quick red fox jumped over the ']

这意味着正则表达式应该给我一切,直到它遇到第一个lazy而不是最后一个,我只想使用findall

1 个答案:

答案 0 :(得分:0)

通过添加?来创建非贪婪模式:

>>> m = re.search(r'[\s\w\S]*?(?=lazy)', s)
#                            ^
>>> m.group()
'The quick red fox jumped over the '