regex 如何匹配位置正确、顺序错误的正则表达式字符?

kd3sttzy  于 2023-01-14  发布在  其他
关注(0)|答案(1)|浏览(90)

假设我的字符串是bucs,我想匹配buccaneers、坦帕湾buccaneersbucs,但不匹配"falcons"。
我对regex还很陌生,我尝试过:

re.findall("bucs", "buccaneers")

它返回了一个空列表。
我该怎么做呢?

kpbpu008

kpbpu0081#

您可以使用.*分隔字符,以匹配字符串中没有字符或字符之间有其他字符的字符串:

In [1]: strs = "buccaneers", "tampa bay buccaneers", "bucs", "falcons"

In [2]: [s for s in strs if re.findall("b.*u.*c.*s", s)]
Out[2]: ['buccaneers', 'tampa bay buccaneers', 'bucs']

相关问题