正则表达式在单个匹配中查找和打印多LPE匹配

2024-05-26 11:07:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我的问题是假设我有ab+,我输入aabbbbba,当有ababbabbbabbbbabbbbb时,它只找到一个匹配项

我的代码在索引1中找到匹配项,但不考虑内部的匹配项,我尝试了所有方法,试图将其从abbbbb打印到ab。 这是我的密码:

import re
exp, srt = input("RegEx,String:").split()
print(srt)
for m in re.finditer(exp, srt,):
   print('"', m.group(0), '"', "is found at index: ", m.start())

Tags: 方法代码importre密码inputabregex
1条回答
网友
1楼 · 发布于 2024-05-26 11:07:22

您必须安装^{}包,这是re更强大的替代品。它支持可变宽度的lookback断言(而re包只支持固定宽度的lookback断言),因此您可以使用以下regex:

regex.findall(r'(?<=(ab+))', 'aabbbbba')

这将返回:

['ab', 'abb', 'abbb', 'abbbb', 'abbbbb']

相关问题 更多 >