请参阅此正则表达式:
/^(?=.*Tim)(?=.*stupid).+/
要更专门地使用先行,您可以添加另一个(?=.*<to_assert>)
组。整个正则表达式可以简化为/^(?=.*Tim).*stupid/
。
观看正则表达式演示!
>>> import re
>>> str ="""
... Tim is so stupid.
... stupid Tim!
... Tim foobar barfoo.
... Where is Tim?"""
>>> m = re.findall(r'^(?=.*Tim)(?=.*stupid).+$', str, re.MULTILINE)
>>> m
['Tim is so stupid.', 'stupid Tim!']
>>> m = re.findall(r'^(?=.*Tim).*stupid', str, re.MULTILINE)
>>> m
['Tim is so stupid.', 'stupid Tim!']