我想在以下字符串中匹配 aaa bbbbbb aaa:

aaa  bbb   bbb    aaa

使用
match = re.search("^(?=.*(aaa))(?=.*?(bbb)).*$", subject, re.DOTALL | re.IGNORECASE)

https://www.regex101.com/r/vA0nB0/2

但它只匹配 aaa bbb

我怎样才能匹配 bbb aaa 呢?

最佳答案

您可以尝试以下简单的正则表达式。

>>> import re
>>> s = 'aaa  bbb   bbb    aaa'
>>> re.findall(r'aaa.*?bbb|bbb.*?aaa', s)
['aaa  bbb', 'bbb    aaa']

关于Python正则表达式以两种不同的顺序匹配两个字符串?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29022950/

10-12 20:55